Category Archives: Essays

Longer-form writing on topics I care about.

New Spring Design

Time to break out of your RSS readers: there’s a new design on Ma.tt! Recommended only for the high-bandwidth and the open-minded. There was nothing wrong with my old theme, I just get an itch for something new every now and then and wanted a totally different direction — especially now that every site has copped the worn paper look / colorful flourish. Also it’s refreshing to be able to have a design where the only person in the world it needs to please is me. Here’s a before and after:

For fans of the old design, I’m going to abstract it into a regular WordPress theme — gallery features and all — that will be available to the entire world, including WordPress.com. It’s amazing to me how many great designs are thrown away, never to be used again, when as a WP theme they could live forever.

I wanted to thank Julien Morel, the creative mind behind this iteration, and Brian Colinger, who turned the vision into HTML, CSS, and PHP.

If I could I would redesign the site every season: Winter, Spring, Summer, Fall. It just always takes longer than I planned (this was supposed to launch in Winter). The cobbler’s sons go shoeless.

What do you think?

WordCamp Roundup

This month there were three WordCamps around the world: WordCamp Las Vegas, WordCamp Indonesia, and WordCamp Whistler. Here’s what’s coming up in the next two months. Asterisks indicate WordCamps I’ll be attending:

Dubai Timelapse

A month or so ago I got a tilt-shift lens (Nikon PC-E Micro Nikkor 45mm f/2.8D ED) and one of the first things I wanted to try was interval shooting to make a stop-motion like tilt-shifted video like these awesome ones from Australia photographer Keith Loutit. Haven’t quite figured out how to make them look that cool yet but here’s one of the first efforts, taken from the Burj Al Arab looking down at its car entrance at night. Watch how the lights come in and out of focus, and how fast the cars are at the intersection. The video is available in full HD if your computer can handle it just toggle it in the top-right and go full-screen.

Big thanks to Michael Pick of WordPress.tv fame for doing all the video magic here.

Tune in to WordPress.tv

Today we’ve switched on WordPress.tv, a new space to geek out and learn about all things WordPress.

WordPress.tv is home to tutorials for both WordPress self-installs and WordPress.com to help you get blogging fast and hassle-free.

We’ve also aggregated and organized all that awesome WordCamp footage from around the web, on WordCampTV. There you’ll find videos and slideshows of presentations made by Automattic employees and other WordPress gurus, plus interviews I’ve done with the media and fellow bloggers.

Tune in regularly for fresh content and updates to the WordPress.tv blog.

As always, community comes first. You have a say in shaping the future of WordPress.tv. Just drop us a line and let us know what you’d like to see added next.

Twenty-Five

Today I am a quarter of a century old. To be honest I never thought I would be this old, it was a number beyond where I could imagine or visualize but the last few years have just gone by in a blur and here I am, 25 years young and finally able to rent a car without paying an age penalty.

Following up from the open source resolutions, here’s what I’m going to aim for this year in no particular order:

  • Learn a language where WP has a big impact (probably Spanish).
  • Take more videos, post at least 2 a month.
  • Post 10,000 photos in 2009.
  • Post at least one book a month I’ve enjoyed.
  • Don’t try to do everything myself.
  • Redesign Ma.tt! (And get back up in the search engine rankings for “Matt” on Google.)
  • Post more personal stuff. (Like this.)
  • Spend more time working with and coaching other young entrepreneurs and startups.
  • Donate to 5 Open Source projects that touch my life daily.
  • Learn to make/prepare one food item a month.
  • Launch, launch, launch! (Real artists ship.)
  • Get people to capitalize WordPress correctly, and stop using the fake mis-proportioned W. 🙂 (Here are some correct ones.)
  • Print my favorite picture of another person every month and send it to that person in a picture frame.
  • Reinstate WordPress Wednesdays and make it easier to do an amazing photoblog with WP.

(Hat tip to Boris Mann, Benji, Niall Kennedy, John Roberts, Titanas, Network Geek, Avinash, Kirb, Julie, Mark Jaquith, and Kabatology for the resolutions.)

This is the seventh year I’ve blogged my birthday: 19, 20, 21, 22, and 23, and 24. If you had asked me 7 years ago where I would be today I couldn’t have imagined all of the amazing things that have happened, the incredible people I’ve met, and the communities that I’ve become a part of. Thank you. Here’s to the next 25.

All birthday posts: 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42.

ThinkGeek’s Crappy Wishlist

I’ve always found the Wishlist concept to be cool, especially as Amazon implements it. I love it when the developer of a plugin or software I use links to their Wishlist because then I can buy them something personal, it seems less crude than a Paypal donate link where you’re putting an explicit price on things.

The other day Kent Brewster found a JS problem on WordPress.com. I was browsing his FAQ and saw this: “My ThinkGeek Wish List is always open.”

If you click that link, you’ll see in red letters: “To shop from this wishlist, please add items to your cart using this form only! Otherwise, your gifts will not be removed from this wishlist, and the recipient may get duplicates.”

Okay — a little weird, but ThinkGeek’s home-grown shopping cart has always been a little odd, I’ll run with it. I add it to my cart from that form, go to the checkout form and sign in (I’ve spent lots of money with ThinkGeek over the years), and complete the order. (How to Survive a Robot Uprising, for the record.)

So I send an email to their customer support: “I ordered something off someone’s wishlist, order e5886bb4. Everything in the order looks like it’s being shipped to me, not the recipient. Could you confirm it’s going to this guy’s wishlist and not me?” I then linked to the wishlist. Next morning, a response:

Matt,
This order is being shipped to [my address redacted]
United States
That was the address entered when the order was placed.
Thanks,

Tracy G
Customer Service

Not helpful at all… my reply: “Why would I buy something off someone else’s wishlist and then ship it to me? If it can’t be shipped to the person who made the wishlist, then please cancel it.”

No response, and two days later the order ships, to me. This morning, a final response from Tracy:

Mr. Mullenweg,
When the order is placed the order you had the option of entering an alternate ship to address.
Since your order has already shipped we can not change or cancel the order.
Thanks,

Tracy G
Customer Service

Given the next-day shipping I paid extra for, the book should be arriving any day now. The whole point of a wishlist is that I don’t know Kent’s address, nor should I need to. Also the big red sentence on the wishlist page implied to me that Kent would get anything I order from that specific form/page, otherwise why would I need to add it to my cart specifically from that spot?

To Kent, my apologies. If the robot uprising comes before I’m able to get you this book and we both die in the aftermath I’ll buy you a drink.

To ThinkGeek, you’re cooler and smarter than this. Please fix your wishlist functionality.

To everyone else, set up a wishlist on Amazon. It works, and if you link to it from your blog and do nice things people may order from it for you, and there’s nothing nicer than a surprise Amazon box showing up at the door.

Nerd Attention Damage

I would like to award the prize for the Most Damage Inflicted to the Geek/Nerd World in the Past 5 Years to Michael Lopp, author of the seminal Nerd Attention Deficiency Disorder in 2003. No article more effectively romanticized an inability to do one thing at a time, and do it well. On the bright side, Digg and Bloglines should probably give him stock. Need an antidote? Spend 10 minutes collecting everything you need to work on a problem, and unplug the internet for 2 hours. You’ll finish in 30 minutes.

Grey Followup

On the bright side, last week’s hatchet job in Techcrunch generated some great blog posts. For whatever reason they don’t show up as links on Techcrunch’s page, but here’s some of the better ones:

To summarize some of my responses:

  • I have no problem with people making money from Open Source, in fact I think some of the most successful OS projects have profit motives aligned with user motives.
  • Related: I have no problem with Pligg being sold. I think it’s better than them selling links in the software.
  • It is possible to make money while giving your users something they want and provides value rather than something they never asked for. (Think of selling a hosted version vs. selling paid links meant to spam search engines.)
  • The fact that I made a similar mistake in the past gives me unique perspective into both sides of the issue.
  • The developer blogroll links in WordPress are nothing like the links being bought and sold for the intention of spamming search engines, but regardless they have been replaced with links to WordPress resources instead of individual contributors.
  • Duncan said “Money is money, no matter how you make it.” I could not disagree more.
  • While anyone can do almost anything with WordPress under its license, that doesn’t mean we have an obligation to promote folks who we feel are doing so in a way which is not ethical or in the best long-term interests of the community.

Switching to Google Reader

I held out on using a RSS reader for more than two years. I had a little thingy built so Ping-O-Matic would use its own results and Weblogs.com to store the last updated time of every blog it saw, and then I reordered my blogroll based on that. (The original version in WordPress parsed the whole changes.xml from Weblogs.com a few times an hour. Remember when that was feasible?) Then I would go from the top of the list to the last one I remember reading, opening each in tabs, and closing as I finished. Incidentally, this kept my blogroll from withering as many do.

At some point I started begrudgingly using Bloglines in 2004, and fell in love shortly thereafter. Where I used to follow a few dozen blogs, now I could consume hundreds and its UI just made sense to me, and just got better over time. I sang its praises often in interviews, mentioning it as one of the handful of websites I used daily. Any outages or performance problems it had seemed minor to me, only reminding me of how much I appreciated the service when it was up. Bloglines search was and continues to be the cleanest in the space.

I don’t recall exactly when many of my friends started switching to Google Reader. I had tried it at its first release and was pretty unimpressed. I saw the hubabub around Gears and how Reader was the first to embrace that. I watched with envy as friends used their trends feature to see nifty data about how and when they read feeds, and use it to cull out the non-essentials, much like I used to with my blogroll.

A week ago, frustrated to no end by a bug in Bloglines telling me to reread things I already had, I decided to make the switch cold turkey. I packed my OPML file and went along to Google Reader full-time. It hasn’t been painless — the keyboard shortcuts are a little funky on dvorak — but it feels better to be on a platform that whether real or perceived feels like it has momentum. That self-fufilling X-factor in apps is one of the magic elements for me. Also as I’m adapting to the UI I feel a lot more efficient than I used to in going through things.

Finally I’ve started reducing my subscriptions, down to 346 now, and I hope to be under 200 within a month or so. I’m thinking of adopted a fixed-number, say 150, and if I want to add one I need to remove another one first so the total is always the same. (I’ve considered this for social networking sites, too.) However it’s probably focusing on the wrong metrics, unread items is more important than total feeds.

Price of Freedom

I got asked an interesting question today:

The only thing why (at least) I encode the footer is to prevent people from removing my designer link. I usually spend around 6 hours designing the graphics and coding the theme and some people simply take my link off and some of them even dare to write that the theme was designed and coded by them! How would you feel if someone took your WordPress script (since it’s free) and said they made it? Wouldn’t you like to bite their head off?

The response became too long for a comment, so here it is:

Kate, thousands of people every day remove the WordPress link, or my link, or search and replace the WP logo with their own and redistribute it, use it to spam, distribute hate speech, or any number of awful things you can imagine. So why have hundreds of people spent thousands of hours working on it?

Though the freedom intrinsic in the GPL that has allowed people to abuse WordPress it has allowed even more people to do amazing things and over time the good far, far outweighs the bad. Most importantly I feel like WordPress would have never gotten off the ground if it hadn’t been open from the beginning. (In fact there were several more functional blogging programs started around the same time that have since withered away.)

Ultimately I know our software isn’t going to change anyone’s spots. Good people will do good things with it, and bad people will do bad things with it — regardless of any protections I put in place. Windows Vista, a multi-billion dollar enterprise, was cracked within days. Does any piddling encoding I can do in PHP really matter? If protection like that isn’t broken it’s a statement of popularity, not security. I suppose could harass the bad guys, shut down their host, send them scary letters, but it’s just going to stress me out and like cockroaches they’ll pop up someplace else. I also know that most projects, software, and ideas die from obscurity, not piracy.

If you accept that bad people are going to be bad then the real question becomes how do you maximize the effect of the good instead of treating them just like the bad. (No one likes to be treated like a criminal.) In my brief experience here’s three things that work:

  1. Give people the tools they need to succeed. This can be interpreted on a lot of levels, but personally I’ve found at the most base the freedoms provided by the GPL and other open source licenses are incredibly empowering.
  2. Celebrate the successes. Talk, connect, promote, and embrace the people who are creating things on top of your creation. (The best revenge against someone doing something bad is helping create something awesome.)
  3. Provide a way for people to choose to help you, and try to remove as much friction from that process as possible. Now that you’ve ignored the bad people and delighted the good, by their very nature they’ll want to give something back.

The success stories around this model are numerous and growing every day. People can and do rip-off the entire Wikipedia, but it’s still become one of the top ten sites on the internet and a marvel of what can happen when you let go. (Not to mention it is run entirely on open source software.) WordPress itself was built on top of a pre-existing GPL product called b2/cafelog. Anyone can run the software behind our hosted service WordPress.com and create competitive sites, and many have, but it hasn’t hurt us one bit. Linux, GNU, and the thousands of related desktop projects haven’t taken a bit longer than folks had hoped, but the impact they’re having, especially on emerging economies, is dramatic. The list goes on and on. It’s not hard to join the movement, but first you have to figure out who you’re fighting, who you’re trying to help, and if the price of freedom is something you’re willing to embrace.

On PHP

PHP.net has announced that they will stop development of PHP4 at the end of this year, and end security updates on 2008-08. (In 2007, their site still doesn’t have obvious permalinks. They do have a RSS 1.0 feed though, remember those?)

PHP 4.0 was release in May of 2000, by 2004 when the first version of PHP 5.0 was released, PHP 4 had achieved complete dominance and was completely ubiquitous in both script and hosting support.

Fast forward 3 more years and PHP 5 has been, from an adoption point of view, a complete flop. Most estimates place it in the single-digit percentages or at best the low teens, mostly gassed by marginal frameworks. Even hosted PHP-powered services who have no shared host compatibility concerns like 30boxes, Digg, Flickr, and WordPress.com, have been slow to move and when they do it will probably be because of speed or security, not features.

Some app makers felt sorry for PHP 5 and decided to create the world’s ugliest advocacy site and turn their apps in to protest pieces at the expense of their users. (Hat tip: Mark J.) They say “Web hosts cannot upgrade their servers to PHP 5 without making it impossible for their users to run PHP 4-targeted web apps” ignoring the fact that there isn’t a released PHP app today that isn’t PHP 5-compatible and recent upgrade issues have been caused by PHP itself in point releases. (See WP#3354.) It’s easy to always promote the newest thing, but why, and is it for us or our users?

Now the PHP core team seems to have decided that the boost their failing product needs is to kill off their successful one instead of asking the hard questions: What was it that made PHP 4 so successful? What are we doing to emphasize those strengths? Why wasn’t PHP 5 compelling to that same audience? Are the things we’re doing in PHP 6 crucial to our core audience or simply “good” language problems to solve? Will they drive adoption? How can we avoid releasing (another) PCjr?

I wonder if PHP 5+ should be called something other than PHP. A unique name would have allowed the effort to stand on its own, and not imply something that’s an upgrade from what came before when in many cases it’s just different, not better, from an end-user perspective. Continue to maintain PHP 4 as like a PHP-lite. Make it harder, better, faster, stronger.

For all the noise though, this isn’t a big deal. It’s easy to forget that PHP 4 hasn’t had any real innovation in the past 3 years while at the same time apps and services built on top of it have created some of the richest and most compelling user experiences the web has seen. (Née Web 2.0.) None of the most requested features for WordPress would be any easier (or harder) if they were written for PHP 4 or 5 or Python. They’d just be different. The hard part usually has little to do with the underlying server-side language.

Someday on our mailing lists I hope half the words wasted pontificating on “language version wars,” which are even duller than language wars, go toward design, copywriting, information, performance — the things that truly matter.

Meaningful Overnight Relationship

One thing I’ve noticed about talking to certain types of press, particularly mainstream, is that they have a pattern in mind before they write about something, and the better you conform to the pattern the more coverage you get.

I think what they really want is an unusually young founder, possibly with a partner, who stumbled on an idea in an epiphany moment, implemented it in days, and then enjoyed overnight success, preferably capped with some sort of financial hook such as a huge VC funding or selling out to a large company for millions of dollars.

It’s not uncommon to get leading questions trying to hit a point in the above patterns… Yes, WordPress really is four years old. I was 19. No, I didn’t create it alone, if I did you would have never heard of it. Actually, it entered a rather crowded field, not even close to being first. No, not planning to sell it, there isn’t really anything to sell, it’s more of a movement. No, I didn’t make 60 million dollars in 18 months.

What’s worst is I think these stories sell a false promise and hope to people outside of the industry — it attracts the wrong type of entrepreneurs — and inside of the industry it distracts us from what really matters.

Someday I think there will be a realization that the real story is more exciting than the cookie-cutter founder myth the media tries frame everything in. It’s not just one or two guys hacking on something alone, it’s dozens of people from across the world coming together because of a shared passion. It’s not about selling out to a single company, it’s dozens of companies independently adopting and backing an open source platform for no reason other than its quality. I’m not a millionaire, and may never be, but there are now hundreds of people making their living using WordPress, and I expect that number to grow to tens of thousands. That’s what gets me out of bed in the morning, not the prospect of becoming a feature on an internet behemoth’s checklist.

Finally it’s not Web 2.0, or another bandwagon me-too content management system with AJAX, it’s a mature project that has been around and grown up over four years of hard work, and it has many, many more years of hard work ahead of it. I smile these days when I see WordPress referred to as an “overnight success,” if only they knew how long an overnight success takes.

Update, see also:

Showing Arrogance

Matthew Mullenweg Continues to show his arrogance — “WordPress isn’t even true XHTML or XML script or code, It’s PHP Script. and this is why it is so easy to hack. From what I’ve gathered, Blogger is a True blue XML Blog. For those that don’t know this, PHP script, is the same script that is used by your PhpBB message boards. and anyone with any kind of good computer knowledge, knows that PhpBB is *very* easy to be hacked. VBulletin is a classic example, as is InvisionFree.” Work has already begun to ensure version WordPress 3.0 will be in True Blue XML.

Mitch Kapor vs. Mark Zuckerberg

I’m here at Startup School and there is a really interesting contrast between the presentations of Mitch Kapor and Mark Zuckerberg. Lotus was one of the fastest growing companies of all time, and was widely heralded as one of the best working environments, and Mitch has been involved with some really interesting tech revolutions over the years. Mark Zuckerberg is of course the founder of Facebook.

Mitch’s presentation was one of my favorite of the day, and one of the thing he emphasized was that you should hire for diversity because diverse groups of people innovate more. Diversity here is defined as a function of experience, background, family status, as well as the traditional definitions like gender, et al. He says that one of the most common mistakes entrepreneurship makes is building “mirrortocracies” instead of meritocracies, meaning they tend to hire people like themselves rather than hiring the best people regardless of backgrounds, and the company suffers as a result.

Almost on cue, Mark started out by saying that the two most important things for a company is to have people who are “young and technical,” and his explanation of such was actually the entirety of his prepared remarks. (He arrived shortly before his presentation, so AFAIK hadn’t heard any of Mitch’s.) He made some fair arguments for biasing toward a technically inclined workforce, even in roles like marketing and support, however he didn’t really say anything compelling in support of youth, besides some vague references to many great creators and chessmasters being between 20 and 35 years old. But in no uncertain terms, he said they have a bias toward hiring young people at Facebook.

I’m inclined to agree more with Mitch. Biasing your decisions based on something completely out of someone’s control, specifically the year they were born, seems as likely to have correlation to talent and success in a company as gender, race, or anything else that everyone knows doesn’t matter. It’s not what you’re born with, it’s what you make of it. However in defense of Mark, you can think of Frank Sinatra’s Young at Heart. There’s youth, and there’s youthfulness. The latter could be described as a set of qualities, and could definitely something you look for when hiring, but make sure you’re targeting the right things.

What do you think: Is there something inherent in age that’s valuable? What’s the most important thing you look for when hiring?

On Blogrolling Hack

I think the importance of this issue cannot be understated. My thoughts from the WordPress Dev blog: Blogrolling Hack Illustrates Need for Decentralization.

This morning it seems that sites who manage their blogrolls using blogrolling.com’s service had their links hijacked, every link being replaced by one to “Laura’s Blog,” which predictably redirects to a porn site. As painful and unfortunate as this is, I think it illustrates an important point that as a weblogging community we should be heading away from centralization as a rule, not flocking to every free or low-cost centralized service that pops up.

To me one of the greatest things about weblogs is that they shift power and control away from monolithic organizations and into the hands of users, where it is ultimately more secure. I have a friend who lost three years of her writing when a free online journal service decided to fold and delete everyone’s entries. I know people who hardly use email because their hotmail or yahoo addresses are flooded with so much spam as to make them useless. People who don’t host their own comments have their discussion at the mercy of some third party provider of varying reliability. Many of you reading this had your blogrolls hijacked this morning. In the weblog world blogroll links represent a web of trust — you freely giving a piece of your credibility to another site as a gift to that site and your audience. Today that trust was betrayed for many people.

There is more on the link. I’d love to hear some feedback and assist people in moving away from centralized services, even if it isn’t to WordPress. What are the other alternatives? If you want to move away but you’re having trouble with code somewhere just let me know and I’ll try to help you out.

More Writing

So how is the experiment going? Pretty well I would say, except that I didn’t realize that some words are much harder to write than others. Some words flow while others trickle. Sometimes some words flow where there kshould be no words. A “quota” encourages writing more than editing. So I’m not tracking word counts anymore, though the part of me that wants to quantify everything than can be quantified really wants to.

Everything that can be counted does not necessarily count; everything that counts cannot necessarily be counted.

Robert said that “don’t worry about writing or minimum quotas. Lousy way to learn to write. Just keep blogging, write a web article or two and when you find a good thing to write about for a school assignment, run with it. ” He was right and wrong. Explicit quotas are lousy, but the musician inside me knows that discipline is necessary to excel, and daily practice makes perfect. (To which Kel often counters “But nobody’s perfect, why practice?” I suppose it’s the thought that counts.)