My #WP10 Story

WordPress is 10 years old today.

I started making websites a few years earlier, but WordPress did something for me that all the HTML framesets, <table>-based layouts, and animated GIFs of the 1990s didn’t: it helped me find my voice.

I encountered blogging in high school. This was when LiveJournal and Xanga were hot, and many of my classmates read each other’s long form posts and left regular comments which sometimes ended up essay-length themselves. (I must admit feeling like an old codger when I reminisce about the rich engagement we had in “my day” compared to the signal-to-noise ratio in today’s knee-jerk status updates.)

I had been a tech geek long before I started blogging, and WordPress wasn’t my first blogging software. But WordPress did give me a completely new perspective on my passion for technology. At its core, it was software that removed the technical complexities from the writing process, providing me with an environment to explore my thoughts and share them with people who were important to me. And that led me to my own passion for technology: tools which aren’t just interesting for their own sake, but tools which enable all kinds of people to speak their voice in a more effective manner than was possible before.

I’m staggered to think of my life since those early days of exploring my own voice with this personal blog. Somehow along the way, I started helping other people and nonprofits use WordPress as well. I got a tech-related degree in college, but since graduating, I’ve paid my bills with open-source publishing software like WordPress and Drupal, and discovered a life where each exciting challenge creates opportunity for everyone involved. What started as a hobby in school has turned into a real pursuit of passion.

The best technologies are the ones which are powered by, and in turn serve to empower, great people.

Facebook Timeline first reactions

I just turned on the new Facebook Timeline as per this howto guide.

I don’t know how much people will use it, but wow, they’ve made memory lane a whole lot richer of an experience. There’s tons of stuff to look back on that I wouldn’t have had thought to document myself.

Also, I was worried that some of the new ways you can share with friends in realtime wouldn’t be implemented effectively. But as soon as I clicked a Spotify “play” action, I was presented with this simple menu:

I was cautious because of Facebook’s previous missteps when sharing data from other services, but it looks like they really understand that people want to make decisions about what to share with whom, and they especially don’t want that decision made for them.

Third party sites and apps that posted things to the Facebook news feed before now were usually limited to just links, or if you had some serious savvy, perhaps some slightly richer media. But there were always rumors and anecdotal experiments which implied that Facebook treated data from third parties like second class citizens, not to be shown as prominently as content posted through Facebook’s own apps. This will clearly change with the new Open Graph and timeline – developers have way more control over how to import their media into Facebook, and can publish third party content to Facebook in a much richer way as well.

It’s kind of hard to explain, but here’s an example that comes to mind: I have a presence on several social networks, but I don’t entrust any of them with the stuff that’s most important to me: my blog and photos. That stuff is so important to me that I host it myself, even when some other companies’ services might provide me a nicer experience or a bigger network of my friends. To compensate for the interaction I lose by putting this stuff on my domain, I use RSS-based tools to post content from ZekeWeeks.com to Twitter, Facebook, and hopefully Google+ soon. But it’s always just a dumb link, perhaps with a thumbnail and an excerpt, whereas my Facebook subscribers would see a rich photo gallery or video if I had decided to put it all in Facebook instead.

Well, no more. With Open Graph, I can choose to exist outside Facebook without sacrificing the rich sharing inside Facebook. I can’t wait to see individuals and groups start taking advantage of this in a way that opens new possibilities to them, instead of locking them into a proprietary platform.

That said, I have no idea how this stuff is going to play out in reality. There are tons of question marks about it still. And Facebook has a huge amount of existing users who may have a trouble with a paradigm shift on an existing network that they’ve already conceptualized in a fixed way.

http://www.youtube.com/watch?v=hzPEPfJHfKU

 

Important security note for WordPress users

There’s a vulnerability in a piece of software called timthumb.php that is used by some self-hosted WordPress themes and plugins for image manipulation (not WordPress.com.)

If you have shell access to your web server, go to your web root directory and run:

find -name timthumb.php

(If you can’t do it through the shell, check your hosting control panel’s file manager for a search function or ask your host to run the search for you.)

If you find timthumb on your server, figure out what plugins/themes use it and delete them for now. (I found that WP Featured Content Slider and Featured Post with thumbnail are among the affected plugins.) If removal isn’t an option, get a developer who knows their way around WordPress to safely delete the timthumb library without breaking the rest of your site.

Find full technical details at Zero Day Vulnerability in many WordPress Themes | mm.

PicPlz Sold Out: Why, Again, Are We Letting Fickle Startups Own our Content and Relationships?

I missed this last week: PicPlz is barely live as a service, and it’s already been spun off in a cash deal so its makers can be done with it.

These little mobile apps combine convenience with effortless social interaction, but the final loyalty isn’t to the user. I’m hoping that the social sharing experience for stuff like this becomes less dependent on proprietary services that try to own the social interaction. In the meantime, I’ll be trying to find more effective ways of recreating these rich experiences on platforms that let me own and control my content.

P2 FTW

I’m working on a short-turnaround project with two developers, an ERP administrator, and other stakeholders. This is typically the kind of development project where any time spent on administrative overhead or communication (and re-communication) can hold up real progress.

So I set up a WordPress instance running the P2 Theme by Automattic this afternoon. P2’s closest equivalent is the Facebook News Feed: users can share status updates, blog posts, photos, links and videos with each other in realtime. But P2 is self-hosted, and can be used for just about any purpose, since you’re in control.

[wpvideo YYNW9iSj w=600 h=336]

I’ve got it set up as a private, password-protected internal development communications tool, but it can do all kinds of different stuff. I just think it’s nuts how easy the whole thing is to set up, customize, and use- a real benefit to productivity and communication, instead of a technological barrier.

On WordPress, Thesis, and profitable GPL software

My twitter feed (full of people in the WordPress community after meeting a ton of people at WordCamp Boulder last weekend) unexpectedly caught fire this morning on the #thesiswp hashtag. I had no idea what the fuss was about, but I wasn’t surprised when I read into it: the item in question is Thesis, a robust premium WordPress theme that costs a minimum of $87, and whose source is under a closed software license.

The debate and confusion is really about the licensing status of custom WordPress themes. WordPress is covered by a copyleft license which requires that works derived from the software be covered by the same free, open source license (specifically, GPL v2.) But “derivative works” is a pretty vague concept, and can be interpreted in many different ways. That’s why WordPress founder Matt Mullenweg wrote the Software Freedom Law Center, some of the most experienced legal experts on libre software issues. They provided a rather comprehensive interpretation of the issue:

“In conclusion, the WordPress themes supplied contain elements that are derivative of WordPress’s copyrighted code. These themes, being collections of distinct works (images, CSS files, PHP files), need not be GPL-licensed as a whole. Rather, the PHP files are subject to the requirements of the GPL while the images and CSS are not. Third-party developers of such themes may apply restrictive copyrights to these elements if they wish.”

This falls in between WordPress developers’ wish that the whole community support libre software and Thesis’ completely closed license. Theme PHP must be GPL-compliant, but the graphics and CSS may be licensed otherwise.

As someone who makes custom themes for clients, I am familiar with the feelings of apprehension about open sourcing some of your work – often done for a client who neither knows nor cares about the finer points of free software principles. The common fear is that by giving away your code, you also give away your business model. This couldn’t be farther from the truth. (Unless your business model depends on every customer abiding by your copyright – a foolish strategy in light of how easy it is to pirate web app source code, not to mention an overvaluation of the originality of your source code) (UPDATE: WordPress’ own Jane Wells points out that it’s even less complicated than this for custom theme work, as you only must publish your source under GPL if the theme itself is publicly distributed.)

The truth is that many companies comply with the GPL, retain their trademarks and licensing rights (including WordPress theme graphics and CSS), and do so to great profits. Google, Apple, Facebook, Red Hat, Novell, and countless others make their GPL source available – as do many other WordPress premium theme makers. You can sell themes as long as your PHP complies with the GPL. Pirates can easily copy the rest of your theme regardless, but embracing the GPL not only complies with copyright law and the license terms, but it supports the ideals that made WordPress possible, and makes the whole community project stronger for everyone. And you don’t have to go out of your way to be financially sustainable while doing so, either. Novell and Red Hat sell their entire OS open source under the GPL, the Mac OS X kernel and UNIX userland is open source, so there is no reason why a WordPress theme can’t be both GPL-compliant and profitable.

In short:

  1. Know the license before you use any software
  2. REALLY know the license if you plan to make any money by reselling/extending/developing on top of that software
  3. Comply with copyright law and license terms
  4. Have a business model that relies on your ingenuity and competitive advantages, not on often-disrespected intellectual property laws. If it works for so many on the Fortune 500, it probably can work for your small business.

WordPress 3.0 Beta 1 Screenshots, Impressions

WordPress 3.0 gets a slightly tweaked administrative UI - but more work on this component will be made before the final 3.0 release.

The highly-anticipated WordPress 3.0 its first beta release. While the amazing core team of my favorite open source web app still have a long ways to go, I just couldn’t resist taking the beta for a spin on my test server. Below are my own first impressions of the new stuff- if you don’t care about my opinion, check out the beta announcement. Most of what I have to write about here is from the perspective of a site administrator who wants to properly manage their website content for their publishing needs, so please forgive me as I grossly overlook a lot of the more technical backend changes in 3.0.

WordPress 2.0 came out in February 2005. Several of the “point releases” since then have been major revisions, but none that the WordPress team has determined worthy of an increment in the major version number. When complete, WordPress 3.0 will accomplish a few major things that will take it into this new decade:

  • A new default theme
  • The merging of WordPress with the separate WordPress MU project, a complex customization of WordPress designed for sites hosting many users’ blogs at once (WordPress.com is a WordPress MU hosted blog service.)
  • Custom post types and menu editor

New default theme: “Twenty Ten”

WordPress 3.0 will finally feature a new, customizable default theme.

WordPress has included a default theme based on Kubrick since 2005. To this day, Kubrick is a quite good starting point for a normal blog theme, and plenty of people more concerned with their blog’s content than presentation have opted to keep the default theme. WordPress has evolved to support a lot more than blogs over the years, though, and site managers have had to work hard to get the site to present their information in just the way they want it. While custom themes make this a nonissue for anyone with enough resources to implement one, the new default theme in WordPress makes the app much more flexible out of the box for customization of unique websites.

“Twenty Ten” is widgetized to the brim, allowing WordPress widgets to be created and moved with drag-and-drop ease. Widgets are great because it empowers even nontechnical content producers to control a large amount of their site’s visual presentation. Like Kubrick, Twenty Ten also has a simple way to upload a custom header image.

The new theme also uses the HTML5 <!DOCTYPE html> doctype declaration, which will have all new WordPress installations using the new doctype unless they then implement a custom theme.

Menu editor

WordPress currently contains little out-of-box control over site navigation features, leaving publishers to either hardcode their site navigation into custom themes, or use third-party navigation plugins or theme features. The 3.0 version will bring a menu editor into the core application:

The editor allows publishers to easily create multiple navigation menus with a mixture of internal WordPress pages, category listings, and external web links. This feature is still undergoing heavy redesigns, and includes warnings of more improvements and UI changes to come. Once finished, custom WordPress themes will need to add support for this new feature. Old themes will work fine without it, but won’t enjoy the added functionality.

Custom post types

WordPress currently segregates all content into two classes: “Posts” for blog-like content usually presented in chronological order, and “pages” for more static content. While WordPress started as a blogging web app, it developed more and more momentum as a legitimate Content Management System (CMS) for sites much more complex and customized than the traditional blog hierarchy and layout. Sites wishing to present a lot of different kinds of pages have trouble adapting WordPress to their needs, often going to other CMS products better suited to complex page taxonomies.

WordPress publishers, groan no more! The custom post types feature will allow custom post types instead of the default “post” and “page” types. Unfortunately, I couldn’t find any of this new functionality in the administrative UI – I assume that the feature must have yet to be added to the GUI. (Or that I am an idiot who just overlooked it.) Regardless, web developer Konstantin has a great preview of the current custom post functionality, which must be implemented at the PHP code level.

Other neat stuff

  • I noticed a few new lines in wp-config.php‘s unique keys section for salted hashes. If you think a “salted hash” is something you’d eat for breakfast, just trust me that it’s a good thing for security with your WordPress database. I don’t know if previous WordPress versions didn’t salt their password hashes, or if this is just refactoring of existing functionality.
  • The “Export” feature can now filter exported posts by date, author, category, content type, or restricted status.
  • My current site theme, a rather complicated one, didn’t break at all with WordPress 3 – it just didn’t support some of the new features that require hooks into the theme files.
  • Initial setup now asks for a custom admin password. Previously, there was a counterintuitive automatic generation of  a password followed by prompts to change it.

What’s missing / making me gripe

  • Most of the administrative interface is unchanged. While it has become very usable overall, and I have trained plenty of nontechnical content managers to use it with ease, it still has some sections that need revision.
  • As I mentioned before, custom post types must be implemented at the PHP level – meaning only skilled developers can do so.
  • I would like to see an overhaul and extension of WordPress’s really nice media library features.
  • Integrating custom forms and JavaScript is a real pain in WordPress, usually requiring the use of external plugins or tricky hacks.

Conclusion

WordPress has already been my favorite content publishing platform for a long time, and in the last few years it has become a legitimate and powerful CMS. Recent updates from the team have brought some awesome enhancements and new features, and WordPress 3.0 looks like it’s going to do even more of this than I’ve come to expect. I think that the custom posts and menu editor alone will propel WordPress to even higher popularity and usage on all kinds of websites.

VaultPress: WordPress cloud backup/monitoring/security updates

Automattic, corporate sponsor of the amazing WordPress web publishing platform, today announced the new VaultPress service and initiated a private beta.

VaultPress is, in short, a cloud service that provides automatic cloud-based backups, uptime monitoring, and security updates for any WordPress instance. They’re planning to charge about $10/month for the service, but will finalize the details at a later date.

As a WordPress administrator, blogger and consultant, I couldn’t be more excited about such a service. WordPress is one of the biggest Content Management Systems (CMS) out there, and powers everything from personal blogs (like ZekeWeeks.com) to the New York Times. But like any web application, it requires backups, uptime monitoring, and quick responses to emerging security vulnerabilities. For people like me who administrate several clients’ WordPress instances, the overhead of such management is a serious challenge. VaultPress looks as if it will provide a great centralized way to do this for WordPress blogs of any size. And if the pricing turns out to be so low, it will be accessible to many, from the individual blogger to the biggest company.

Those wanting to get in on the private beta may apply for it here. While I’m not yet offering VaultPress as part of my custom WordPress consulting solutions, I’m keeping an eye on it for the future. And if you’ve been thinking about your own web strategy recently, (shameless plug alert) I love nothing more than putting people in command of their own web presence with tools like WordPress- feel free to drop me an e-mail at (my first name) @ZekeWeeks.com .

Post-Break Motivations

Right now I really, really want to:

  • Kick the tires on FL Studio 8, which just came out
  • Build the new Deliver Me Seven website on WordPress 2.5, which is in Release Candidate stage and looks like an awesome update to the CMS software
  • Write out a couple of percussion pieces for the band (think 3 drummers, one bass.)

Notice anything missing on that list? Yeah, school kind of gets in the way of things. Grr…