Pippin

Mom got Berta and me tickets to see Pippin at the Forrest Theater over the weekend, which we did. The production was excellent.

The story is about a guy, Pippin, who is the son of Charlemagne, and his struggle to discover his purpose in life. Throughout the show, he finds new things that he feels he is destined to be, but it turns out that none of them are.

This particular show was selected by my mom because it ws produced by the same people who made Wicked, which we also enjoyed. But as it turns out, this is the second show (the first being Chicago) that my mom has sent us to that the actors were wearing little more than a thread here or there. This one, unlike Chicago, had actual "sex" scenes, too. There was even one where Pippin is raised and lowered on top of a number of different lovers, or various genders. Not that I'm prudish, but is this the kind of thing you think your mom would be likely to promote?

(Still, Mom, I appreciate that you're so progressive. ;) )

Anyway, the show was a bit offbeat, funny, and had a good sampling of musical styles compared to what musicals typically offer, though no single song stood out particularly like in Wicked.

One thing that the show did frequently is break out of scene. The characters would frequently talk to the audience and call them "audience". This is partly because the idea was that the show was a show, the players (one of the major characters in the story is named "Leading Player") putting on a performance of a story. So it was a kind of act within an act. Sometimes it was funny, like during the scene changes. Sometimes it seemed a little forced, like the entire second half of the play, whenever the Leading Player was correcting Catherine's lines. Sometimes it was a bit disturbing.

There was a very short part of the musical, after Pippin decides what he's going to do with his life, where the Leading Player (who Berta and I are both convinced is supposed to be the devil) is talking to the audience. See, the whole show, the Leading Player is trying to convince Pippin to perform in the Grande Finale, which conists of Pippin setting himself on fire - giving up on the quest for purpose and ending it all. When Pippin finally eschews that notion, the Leading Player and his cast look to the audience for another volunteer to participate. The cast whispers calls to the audience to come on stage and join them. For about 30 seconds, that was about the creepiest thing I've ever seen on stage.

What I did not like about the musical - the resolution. Pippin makes a big deal in the beginning about how everything has a purpose and that he should have a purpose, too. That he has some destiny. Though the whole musical, he looks for this destiny. Near the end, he is in utter despair from his search when he finds the widow Catherine and her son, who rouse him from his despair and give him something to do. After a year with her, sowing fields and caring for her son, he finds himself taking her old husband's place, forgetting about his pursuit of purpose. He gets upset and leaves.

Now at that point, I'm happy. Because it seems to me that if you have to search for meaning, then you have to search for meaning. But then, after a scene where the Leading Player finally tries to convince him to set himself on fire, Pippin decides that a life with Catherine is good enough. Wait. Good enough? What a letdown.

Maybe I missed the point of the story. And maybe I misunderstood his relationship to Catherine, which seemed more to me like she needed him to fill her dead husband's shoes than he needed her to find fulfillment. That being the case in my mind, by choosing that life instead of continuing to search for his true purpose, he might as well have set himself on fire. As the devil/Leading Player says, at least people would wonder what would cause a boy with so much promise to do that.

Ladies and Gentlemen, we apologize for our inability to bring you the finale that we promised. It seems our extraordinary young man has elected to compromise his aspirations. But I know there are many of you out there - extraordinary people, exceptional people -who would gladly trade your ordinary lives for the opportunity to do one perfect act - our grand finale.

Now, if you should decide to do so, we'll be there for you, waiting, anytime you want us. Why we're right inside your heads, and we promise you sets, costumes, lights, magic, and a short - but - spectacular career!

The last five days have seemed both like an eternity and an eye blink, all over a word - Habari - that many people are just recently becoming aware of.

Maybe you first noticed when Chris J. Davis switched his blogging software away from WordPress. After that, dominos started falling, with posts about it from interesting corners of meta-blogdom. It's really been hard to keep up with the influx of interested people and do development and have a life. Thanks so much to Berta for her support during this process, which is undoubtly greatly attributed to her being tired of hearing me complain about WordPress.

So what's the big deal, anyway? Maybe people have said they're interested, but without actually dipping into the small-but-growing community and asking around, it might be hard to get a sense of what any of this really means. Let me cover a few of the common questions and misunderstandings surrounding Habari.

What is Habari?
Habari is a new blogging platform named with a swahili word meaning "News" or colloquially, "What's up?". It is installed on a server of your own, not a blogging service, like Blogger. Habari aims to be a fully functional blogging tool. With Habari, a blogger can do anything they can with the most common blogging tools that are available - draft posts, publish drafts, receive and moderate comments, the sort of thing that blog software does.

Why not use {some other blogging tool}?
There are different reasons for using different tools as each has its strengths. I hope that time proves out Habari's choice to focus on community involvement in every step - planning, design, implementation, distribution, through support. Habari has also chosen to focus on modern technology and coding techniques that legacy systems are not as easily able to integrate.

Why develop another blogging tool?
Everyone in the project has his own reasons for wanting to start fresh rather than contribute to another project or fork something extant, and any reason is really going to be personal. For me, the big reasons are an opportunity to help shape the direction of the project, to build something truly new and inventive, and - especially - to share the experience with people who have these same interests.

Who is associated to this project?
Well, we've had a few people join up with the cause since skippy, Rich Bowen, Chris J Davis and I conceived it back during OhioLinux. We knew that our coder skills would need some help if we were ever going to get a pretty UI design. Khaled Abou Alfa offered up his time in response to our call, and dropped off some crazy wonderful UI designs. After seeing what the project was all about, Michael Heilemann decided he was in, too.

Robert Deaton, who I practically dragged to the New York WordPress meetup with the intention of chatting up Habari, has provided a ton of great PHP insight from very early on. Jay Pipes has been great at pounding against our stubborn WP-isms (since that's where most of us come from) and getting us to consider some code that will really blow your mind when we finally release.

There are four published book authors in our core group. That statistic blows my mind.

I'm missing people who I don't know if I should name specifically, but who have provided code and design reviews all along the way. And I'm really lax in recognizing the folks who have come by our IRC channel on freenode over the past few days and - for whaveter reason posessed them - actually started to help and contribute code, documentation, testing, and enthusiastic moral support. I knew that people would want what we're trying to build, but the turnout from even our unprepared unofficial announcement has amazed me.

So what is special about Habari?
There are a few things that you'll notice about Habari the software apart from the decidedly inviting atmosphere in which we all work. Predominantly, we're using all of this year's tools. PHP 5 instead of PHP 4. MySQL 4 (or 5, still thinking about that) instead of 3. We use a complete object-oriented approach to our code that makes it very easy to experiment; tossing new things to the wall and see if they stick. The PHP Data Objects that ships with PHP 5 enables us to ditch some of the SQL injection issues that have plagued blog tools in the past, and affects performance very positively. (Using imports of our blogs with 2-3k posts and their comments, pre-alpha Habari data access was visibly perceptible as faster.)

The plugin system is top-notch: simple and flexible, written using objects that are very easy to learn. Habari does most of the work for you by registering your plugin hooks, and providing a special home in the interface for your plugin to interact with the admin pages for configuration. The theme system is similarly flexible.

Instead of settling on a single type of template, our template engine is pluggable. You should be able to create a theme using PHP functions (like WordPress does), or the popular Smarty engine, or an engine of another design. Themes will decide what features they offer, either by using a default set of templates (providing a set of template files for each type of page that the engine will display) or by telling the theme engine what pages are available - allowing you to easily add templates with special features at the URL of your choosing.

It sounds complicated, but in the few short days Habari has been in the open, I've seen both a new, working theme, and the Habari engine turned into something like pastebin. Note that this was constructed without anything but the sample code and the inline documentation, and in about a day. It just kind of showed up one day with a couple of guys saying, "Look what I did!"

Spam-handling is not an afterthought in the core product. While we continue to hack away at Habari, comment spammers are bringing some servers to their knees. When MT and WP were in core development, spam didn't exist. Having helped pioneer comment spam detection on WordPress (the original Spam Karma plugin was based on my spam-prevention plugin design), I know how difficult it was to shoehorn detection and moderation into the plugin architecture. As a result of the experience everyone has gained over the years of fighting spam, we realize the importance of making it easy for Habari to fight spam.

As a testament to this, Chris Davis showed me his Akismet plugin for Habari (hey, it's GPL! see below) tonight, and it seems to work just fine (and may be released on his site in a few days). If this development can happen that fast, I have full faith that an open source, peer-to-peer, distributed anti-spam solution that handles spam as well as Akismet will eventually find it's way to a Habari plugin.

Our documentation is going to be edited and ship with the software. If our site goes down, your documentation doesn't. Even with the bundled help, we still plan for a full community site with extra detailed help and user interaction for people who need more. And since we require documentation be submitted with source code updates, all of the developer documentation is written by actual developers that understand the code, and it instantly exists.

I'm glossing over a lot. There is too much very cool stuff to cover in this short of a space. Did I mention database independence with MySQL, SQLite, and Postgres as targets? Atom Publishing Protocol support?

Of course much of this is unimplemented functionality. But it is planned functionality. And a lot of it already does exist. We've figured out how we're going to do it over the past few months, and now it's just a matter of doing it.

But the next time you ask me what's special about Habari, I'll be sure only to mention the people. Because they just freakin' rock.

I've heard you're not using the GPL, does that mean Habari is not open source?
Habari uses a slightly modified Apache Software License. The Apache Software License (ASL) allows us to distribute our source and make sure everyone who helped out gets credit for it. If you contribute to Habari, you're agreeing to those terms. Apart from that, and that's not really a downside, where is the downside?

With the GPL, if you release your code as GPL, anyone who modifies your code is required to distribute that code under the same license, and the license requires them to pass on both the license and the source. In fact, some have suggested that plugins authored for GPL blogging tools are also tainted by the GPL in that they use that blogging tool's library functions. This means that you are permitted to sell your WordPress plugin, but when you do, the person who buys it can then re-sell it for less money, or even give it away for free! I guess there's a business model there -- sell your first copy for big dollars.

People who argue against the ASL say that if you can sell the code that's ASL-licensed, then the freely available source of plugins and themes will dry up. People who argue against the ASL say that we'll lose the ability to use wonderful GPL-licensed code in our project. I don't know how the community will respond to those statements. I wonder idly who benefits more from which license, and whether people realize that GPL plugins to an ASL core are just as valid and possibly more flexible than using a GPL core.

I know that our intent is to keep Habari free and open, and also to be fair with our own use of other projects with the same license, just like open source intended. If people think they can make money by selling Habari add-on tools, that's great - it means Habari is doing as well as I hope it will.

Isn't the high-tech requirement a bit steep for the common blogger?
Last year I started putting my Adsense money to good use, buying cheap hosting at a ton of hosting sites to see if you actually get what you pay for. That plan... It kind of fizzled. But as a result, I've got a few hosting plans at a few popular hosts and suddenly a good reason to do some "common man" testing.

As it turns out, Dreamhost, Site5, MediaTemple, and A Small Orange will all support Habari, with a single config line change. If your host isn't on this short list, your host might even still be able to run Habari. The thought that PHP5 is not widespread enough to be mainstream is, well... about as old as PHP4.

What's with the bells?
You might hve seen some bells in our various logo revisions. Here's the idea: Habari is the swahili word for news. When one thinks of news, they might think of a town crier, which is a very primitive form of podcasting. A town crier often has a bell.

One of the first logos we had was one I cooked up that is basically kind of trying to be a lowercase "h" in a sort of bell shape with a clapper. You can see it carved into a pumpkin.

Aren't you just another WP contributor who is angry about being passed over for inclusion in Automattic, and so you've gotten together to form a new blog package out of spite, but just like b2evolution, TextPattern, and other WordPress-knockoffs it'll never get off the ground?
Oddly, I've seen this question twice this week, and I suppose that even more people are thinking it.

Yes I am a WP contributor, and I continue to be. I organize the world's largest regular WordPress meetup, and that won't stop just because of Habari. I continue to use WordPress professionally, so I don't really see what sense there is having "bad blood" between these projects. I certainly don't have any bad feelings because nobody ever asked me to work for Automattic. I love my job and the people I work with, and I'm pretty comfortable right where I am, as is everyone else on the Habari team whose job I know of.

As far as whether Habari gets off the ground, well... From the interest so far, I'd say we have a pretty good chance. Those other projects mentioned do have fairly decent sized followings of their own (the size of any of those groups for Habari would make me plenty happy), and remember that WordPress was once good ole b2|cafelog. Being that the project is three months old and is hundreds of lines long, it is now much more mature than what this question implies.

How did all this start?
This is about as good a recount of the Habari conception story as you can get without Memorex. And the reason I was at OhioLinux? Skippy suckered me out there with the promise of beer, only to fill my head with ideas of new projects and collaboration. I was seduced by the spinning, plexiglass-encased bust of Pope John Paul on the giant lazy susan table at Columbus' Buca de Beppo, and I somehow agreed to the whole thing. But there was beer. And live, nude penguins.

When will it be ready for me to try?
It's going to be ready for me to try very soon, just as it was ready for Chris. I need to sort out some feed details to make sure certain things don't break, and then it's import/switch to the new theme.

You can try it now, too. Go to the project site, check out the code with subversion (we're not even at a developer preview state yet, so there's no archive you can download) to a server that meets the requirements, and watch it run.

If you have a WordPress database around, you can run the importer to test out Habari with all your posts. Stop by the #habari channel on irc.freenode.net and tell use about your experience. Join the mailing list, read up, and send in your comments.

"Spread the News" - that's our slogan about what you do with . Be a participant. You'll enjoy it.

Thanks to these sites, who talked about Habari early on:
h0bbel
Blogging Pro
Yellow Swordfish
Photomatt
wank
Solo Technology

This is something I've been thinking about a lot lately, and I've not really given it a voice except to Berta and maybe a couple of others.

I've been writing code for a pretty long time. 25 years now, actually. Sure, a lot of that is not professionally, but I think it's relevant in that programming has never been a tinkering kind of hobby with me. Programming is not something that I picked up like many people do a musical instrument in their childhood and then forget when they get older.

To give you an idea of what I mean, know that I didn't go to college to learn programming. I went to school to be a math teacher. And when that didn't work out, I turned my passion for programming into a career, which has worked out fairly well for me, thank goodness.

And that's what it is, really, a passion. I don't have much formal programming training. I never needed it. And that doesn't really bother me - or does it?

Although I've personally built reasonably large software projects used by Fortune 50 companies, I still occasionally feel that twinge of doubt. Am I really capable of this? What really makes me an expert at this? An expert? - Ha!

It feels very strange when people start to trust my word on these things. I suppose that with demonstrated experience you earn that kind of respect. It's just odd when people who I respect look to me with that kind of respect. I mean, I'm glad - I just wonder what I did to deserve it.

I wonder at what point people who do consulting in any field come to reconcile themselves as experts at what they do, enough that they accept money for their services and feel good about it. It's not that I feel bad about taking the money, just sometimes... I'll explain.

I've been told before that I don't charge enough. The explanation for why I should be allowed to charge more is: For my clients to do what I have done for themselves, they would need to somehow acquire all of the training, experience, and natural ability that I have, and then apply it to the problem. Although it might only take me ten minutes to perform a task for them, it could take them days, or it might take less time and not be done as well. So certainly ten minutes of my time is worth some greater fraction of their time's value to do the same thing.

Still, I wonder if I'm really worth all that.

Some recent personal projects have brought some of my own skills into question for me. It's not that I have to prove I can do the work - I know I can do it. I think it's that I need to prove it to people who also know this discipline well. I want them to see me as successful and seek my input and insight. Do I think that I've earned that level of trust from them? I have not yet, and I'm trying hard. I hope I will.

I just wanted you to know that sometimes I feel really confident about my abilities. Top notch, top of the world, I'm so great I can do no wrong. But I sometimes have doubt. I feel like a big kid, and when I look in the mirror I don't really see myself as the accomplished 30-something coder that other people see.

I look in the mirror and remember that kid who didn't play outside with the other kids, but hacked endlessly on a Timex-Sinclair to get an animated graphic of ET to appear. I don't see that kid, but he's still here. He just has bigger projects, and better equipment, and people who apparently rely on his skills. It's kind of freaky.

It's a bit like that movie, Searching for Bobby Fischer. He's so great at chess that losing a game can really throw him. Well, I'm pretty good at programming, but it turns out that my self-perception of that skill is pretty fragile.

I'm not sure what the lesson is here. "It's ok"? "I'll overcome it"? Sure. Of course. I guess I just thought it was unusual to have these thoughts, and wanted to make mention of the oddity.

There are only three truly significant differences between these formats in my mind.

First: Blu-ray holds more data than HD-DVD, although no Blu-ray disk manufacturer is producing the highest-capacity Blu-ray disks, and so all current commercial HD-DVD movies are higher capacity than Blu-ray. Not that you'll care too much how big your disk is when the picure is comparable due to HD-DVD's better compression algorithms.

Second: The HD-DVD manufacturing process is very similar to traditional DVD manufacturing. It will therefore take significantly less money to upgrade a facility to produce HD-DVDs than to upgrade a facility to produce Blu-ray disks. Also, an upgraded HD-DVD plant can easily reconfigure to produce standard DVDs, which a Blu-ray plant couldn't do.

Third: The HD-DVD spec requires that a player's hardware can play back two simultaneous streams of video. The result is that special features in videos, like multiple angles and commentary, can now be picture-in-picture. For example, a computer-animated film might make available a "commentary" picture-in-picture video stream that plays the wireframe model of the video that is currently being displayed on the screen.

The main reason why you'll hear Blu-ray proponents saying that multi-format players will be prohibitively expensive is how they imagine the world if people started buying multi-format players and they suddenly became reasonable in price for everone to buy. Follow along...

When you spread the cost of tooling-up the disk factories over the number of disks they produce and include material costs, a Blu-ray disk will cost around twice as much to manufacture as a HD-DVD. If everyone had a combo player, the movie studios would get the opportunity to select a single format, since no matter what they selected, everyone could play it. Given the opportunity to save money by producing disks in only one format, the studios would jump at it. Which format will they choose? Well, you can bet that they're not going to choose the more expensive of the two formats. An extra $.50 per disk would certainly hurt their bottom line.

The PS3 is looking less and less "all that", and Sony even moreso. I'm becoming more convinced that open standards are important, almost required, for business success.

Berta got me a book for Christmas by Neil Gaiman called Fragile Things. Fragile Things is a collection of Gaiman's (who at once I feel weird calling "Gaiman", because of my familiarity with his writing, or "Neil", because I only met the guy once at a book signing) short stories, in that strange genre that there isn't a good name for but has been called "fantasy" by those who try.

This book made my Christmas list because of a section that I read in the book store. In it, there was a circus of sorts, complete with ringmaster. I don't have the book in front of me, and I wasn't expecting a quiz, but the story title was something like, "The unexpected disappearance of Mrs. Twitter." I'll regret trusting my poor memory later, but I thought it quite an unusual title for a story about a circus. I should have read more.

And I did. But only just a couple of nights ago from my fresh gift copy when I couldn't get to sleep. That was kind of a mistake.

The stories I read weren't "scary" in that traditional sense, but just peeking their way through the shroud between reality and fantasy enough to really freak you out.

The whole story - about the "Mrs. Twitter" - was such a thing that could happen in reality until blam, it's not. But not so far gone that you couldn't see it. Maybe not so unrealistic, see?

And the one about the months and the runt? It's certainly fantastic, but it lingers with you like Gaiman's writing tends to do, and unlike many typical fantasy authors' attempts.

So I eventually resolved to read the rest later (as opposed to putting it down forever), and went off to bed. Anyway, the result - two nights of insomnia, and a need to leave some lights on while walking around the house alone that late at night.

Darn it, I'm a kid again. Wait... Cool.