« Life | Main | Programming »

August 19, 2004

Go West, Young Man

Six Apart

Here we go. Catch-up time:

  • I quit my job.
  • I’m joining Six Apart.
  • Oh, and we’re moving to San Francisco.

I’ll be working at the hippest joint in the bay area (I’m sure there is a ranking for that somewhere, but I don’t have to look).

I’ll be joining the company as a software engineer, working on Movable Type. In particular, I’ll be working on the new PHP dynamic rendering option (available in the upcoming 3.1 release). And I’ll be joining an incredible team.

I’m excited about the future of Movable Type and Six Apart. They’ve grown so much in the last year and I’m happy as a clam to get a ticket to ride.

And this should free up my evenings a bit, since my hobby industry will now be my day job!

This is the first job I’ve taken that came with a public announcement. Told you they were hip.

July 20, 2004

Blogon 2004

Just a quick note to say I’ll be traveling this week to San Francisco. I’m going to attend the Blogon 2004 event.

June 16, 2004

Six Apart, my kinda company

Say what you will about the whole MT 3.0D licensing debacle, Six Apart is an awesome company.

They’ve really worked hard to resolve the public relations nightmare they found themselves in last month. And they’ve made changes which should appeal to most everyone. Sure, they made some mistakes. What company doesn’t?

What they continue to get right is that they listen and respond. And it perfectly demonstrates the power of the software they produce. Especially when it comes to corporate-to-user communications.

Continue reading "Six Apart, my kinda company" »

May 15, 2004

Movable Type 3.0

I’ve been personally asked many times now about my opinion on the MT 3 license issue. I’ve intentionally delayed my response to avoid a knee-jerk reaction of my own.


Before I begin, I should say that I have been a supporter of Movable Type for a long time now— since version 1.0 was released. I switched to Movable Type from Blogger, a free service. I donated early on to Ben and Mena because I knew they were out a job at the time, doing what they loved. Trying to make ends meet. Almost three years later, MT has come a long way and found it’s way to a lot of servers and hearts out there, powering all kinds of things. Ben and Mena now run a company of their own, with real employees, real responsibilities to themselves and to investors. I’ve cheered them on all the way. So, with that, feel free to take what I am about to say with a grain of salt if you must.

What happened?

By now, you probably know that:

  • Movable Type 3.0 “Developer Edition” is out
  • The licensing for MT 3.0 has changed

The licensing bit has some folks upset. You can tell by the outrage that people are passionate about this product. And the outrage is understandable to an extent. Movable Type has been free for personal use since day 1. Now they’re asking the majority of their users to pay for something that many of them have never had to pay for to begin with. There is bound to be some backlash about that. It’s like taking a bottle away from a baby1 (I know something about this). They’re bound to cry. But can you make them pay $80 to get that bottle back?

Well, fortunately for our baby (and that’s enough of that analogy), there is still a free version of Movable Type. A fully functional, free version of Movable Type 3. There is, however, a license restriction of 1 author and 3 weblogs.

Now these limits may sound a little restrictive. Some go so far to say, “Six Apart has gotten greedy!”. No, they haven’t. They are a growing company. Growing a company takes dollars. This is no volunteer organization, you know. They have real-world bills to pay. Ben and Mena have poured everything they have into their products. And for nearly three years, they’ve given it away. That’s not greed— that’s generosity. Now they are charging for their product (what a concept!), something they had a right to do with their first release.

So what about that free edition? Let’s take a look at what you don’t get with the free edition:

  • No support from Six Apart: Well, this isn’t new. The old MT personal license didn’t offer support either. You had to use the support forums, and you still can, but that isn’t official support.
  • No access to paid installation service: This may be new, I’m not sure. Basically if you need help installing Movable Type, you’ll have to buy a license as well as pay for the installation. This doesn’t really affect the majority of those wanting to upgrade since they probably know by now how to do it themselves.
  • No access to fee-based services: This is not new either. The personal license for MT 1.x and 2.x restricted this as well.
  • No promotion of your weblogs through the Recently Updated list: Again, nothing new here. You had to have donated to get to do this, so this isn’t a free service that is being taken away.
  • No commercial usage: No change here.
  • No more than one author and three weblogs: OK, here’s the big difference, at least for some users.
  • Optional use of the TypeKey authentication service: This is part of the comment moderation/registration process, new to MT 3.

The main difference is the author and weblog restriction. Everyone using a personal license for MT 1 and 2 has had to live with the other restrictions all along.

What is a ‘weblog’ anyway?

So with the free version, you can have up to 3 weblogs. Just what is a weblog in their definition? You see, with TypePad, even if you have the “basic” account with only 1 weblog allowed, you can create “TypeLists” and photo albums to supplement that weblog. With Movable Type, those kinds of things can be done too, but you have to create additional weblogs to do it. These additional, supportive weblogs are sort of a subset of the main blog— used to control a site. Much like I do on mine. Now if you use 5 or 6 supportive weblogs, does that mean you have to pay for the high-end personal edition? I don’t think so. They are weblogs in MT’s database, but they’re not blogs. And as such, I think they fall out of the definition implied by the license restrictions.

New information on this issue is coming to light today. The Get Movable Type page has been updated with a little sidebar panel labelled “Questions about the license?”. It clarifies the following things regarding restrictions based on weblog and author counts:

  • Author counts are based on “active” authors, those that have logged in within the last 90 days.
  • Weblog counts are based on “active” weblogs, those that have had posts created within the last 90 days.
  • One site at one URL counts as a weblog for your license, even if it is made up of more than one weblog in the software.

That last bullet is a very important one. It is further clarified in the updated personal and commercial license:

“Weblog” means a single Web site viewable at a single URL (Uniform Resource Locator), consisting of one or more weblogs as generated by the Software via the “Create New Weblog” function of the Software.

The restriction goes more to the number of web sites produced by the software, not the number of actual weblogs. Mena has more to say about this.

This means that if you are 1 author and you use 11 different weblogs to power your 1 web site, or even 300 weblogs to power your 3 web sites, you can use the free version. It doesn’t cost you $600. It doesn’t cost $1.

“Commercial”: ugly word?

Today, open source is all the rage. In fact, most MT sites are running on Apache, an open source web server. Doesn’t cost a dime. Never has, most likely never will. But that model is not for everyone. And it is not going to sustain a product-driven company like Six Apart. I’m not against commercial software. I’m a programmer. I’m a Mac user. I pay dearly for software that is dear to me. If Apache were to change to a commercial product tomorrow, I would be first in line to buy a copy. It’s good software. It has served me well. I want to see it thrive and continue to be developed.

Movable Type is good software. It has served me well. I want to see it thrive and continue to be developed. Don’t you?

And the prices— well, frankly, they’re not that bad. If you do require a license in the first place, the $69 you pay buys you an awful lot of product. Commercial software that supports 5 users for $69 (or $99 if you prefer to count it that way) is a bargain no matter how you slice it. When it comes down to it, money makes the world go round. Even most open source projects has some “Donate” link someplace.

Movable Type is moving again

I’ve been sad for a while about the lack of movement and development of Movable Type. True, the 3.0 release is less about features and more about empowerment— there are far more hooks into Movable Type for us developers to make use of. TypePad has been getting a lot of nice features for some time now. Is it coincidental that TypePad brings money into the company where Movable Type (by and large) has not?

With Movable Type 3 providing a revenue stream for the company, it will bring resources to Six Apart to continue development of the product. That’s what users want, more than anything.

I for one am looking forward to the innovations that will come with Movable Type 3.

Continue reading "Movable Type 3.0" »

March 17, 2004

Breaking your Entries

Here’s a quickie I’ve been meaning to post for a while. From time to time, people ask me, “Hey Brad— how do you do those dividers inbetween each post for a single day? How do you get MT to do that?”

Well, it’s not asked very often since I rarely post twice a day (or even once a day here lately). But here’s how you can do it, without using even one of my fantastic plugins.1

Continue reading "Breaking your Entries" »

February 19, 2004

MT-Textile 2.0.2 retouch

Argh. A little typo crept into the 2.0.2 release, so I fixed it and updated the zip. The change was so minor it didn’t warrant a release bump. If you’re getting warning messages during your rebuilds or the unicode macros aren’t working, just redownload the 2.0.2 version. It’s something that affects the use of the unicode names, ie: {white smiling face} to {white smiling face}. (Only a feature that Perl 5.8.x users get.)

February 18, 2004

MT-Textile 2.0.2

Available here.

The weird problem that this update addresses is a glitch in a particular edition of Perl. Specifically 5.8.0 with the 18379 maintenance patch. For example, that version of Perl causes this to break:

use Encode;
my $str = 'a';
$str = Encode::decode('iso-8859-1', $str);
if ($str =~ m/^([^\s]*?)$/) {
  print "found $1\n";
} else {
  print "no match\n";

Under most versions of Perl (that have utf8 string support), this will print:

found a

But for Perl 5.8.0, with the 18379 maintenance patch, it prints:

no match

Very odd indeed. Thats a very basic regex failure for utf8 strings, don’t you think?

In fact, you can eliminate the decode operation and produce the same failure by changing it to this:


Which just flips the little ‘utf8’ flag on $str. This should have no adverse effect to 7-bit ASCII data, but it does alter how that regex operation matches.

In any case, this particular issue has been a real annoyance. In MT-Textile, what I want to do is this:

  1. Take the raw byte data as provided by Movable Type
  2. Decode the data to native a Perl wide-character string (only if the user has Encode and if their PublishCharset is defined in mt.cfg)
  3. Do everything Textile would do (safely operating against multibyte characters)
  4. If step 2 happened, encode the data returned by Textile back to the character set identified by PublishCharset.
  5. Return string back to Movable Type

But with this bug, I’ve been forced to eliminate steps 2 and 4 which means that Textile may or may not properly handle multibyte data. That being said, I have not seen any problems with my (limited) tests with Japanese, Chinese, Korean, etc. But if you do, please report any problems you may encounter to the bugtracker.

February 4, 2004

Don't look now...

…but someone has gone and released MT-Textile 2.0. The usage instructions are here, although it probably needs some more examples.

The play thing is still running if you want to kick the tires. And of course, please submit any bugs you may find to the bug tracker. Please use the bug tracker to report any incompatibilities you find compared to the old version.

For those of you that are upgrading, it registers itself as “Textile 2”. So you will have two Textile choices. To be safe, you should leave your old entries set to the 1.0 version of Textile and compose new entries with the new version. But, if you want (and if you’re using MySQL), you can update all your old entries to use the 2.0 release, by using this command:

update mt_entry set entry_convert_breaks='textile_2'
 where entry_convert_breaks='textile_1'

That will update all entries for all MT weblogs in your database. If you need to limit it to a specific weblog, add a “and entry_blog_id=N” to that, where N is the id for the desired weblog. Naturally, you’ll want to “rebuild all” following such a step.

If you’re upgrading from the MT-Textile 2 beta, you should remove the old version entirely. Delete the textile.pl file from your MT plugins directory and the “textile.pm” file in the “extlib/bradchoate” directory. If you do that, you will definitely need to switch your entries from using “textile_1” to “textile_2” as mentioned above. Sorry for the inconvenience.

My thanks to all that have beta tested and for everyone’s patience.

Thank you and good night.

July 27, 2003

Sitewide RSS

Well, it looks like this weblog is becoming just a Movable Type how-to blog. Well, in keeping with that theme, here’s a little “part two” companion piece for Doing your whole site with MT (one of my worst blog titles, ever).

Now that you’ve got your whole site MT-powered, what about your RSS feed? Chances are you, have one for your weblog, but what about one for everything? I’ve created one for my site, called sitewide.rss. It lets folks keep track of every update that happens to my site, whether it be part of my weblog or not.

To get it to work, you have to do a little bit of work. It’s not much though, and once you’ve done it, it’s easy to maintain.

Continue reading "Sitewide RSS" »

July 19, 2003

Simple Template

Movable Type templates aren’t too difficult to write, but they can be difficult to read. So I’ve whipped up another plugin to fix that. Simple Template is a plugin that provides an alternative syntax for Movable Type templates1.

Continue reading "Simple Template" »



Powered by Movable Type