John J Jacoby: Making a living scratching your itch

It’s one of the mantras of free and open source software (FOSS): Software is born when one developer tries to solve their own personal problem. That is, the developer is “scratching an itch,” not being assigned to code something after some corporate marketing department spends weeks/months/years trying to figure out what the world (or at least a significant market share) needs or wants.

A more difficult problem is when a project becomes popular, scratching a lot of people’s itches. The software gains features, develops more bugs, attracts more users (each of whom may have their own ideas of what the software should do), and … takes more time to work on. Time that the volunteer developer(s) just don’t have, because they have to pay the rent/mortgage, feed the family, and similar daunting tasks.

One solution to this issue is for companies to assign coders to a particular project full- or part-time. But sometimes the needs of a company change (as when Canonical reassigned Jonathan Riddell, Kubuntu’s lead developer, away from the project), and the developer has to return to volunteering for the labor of love.

Getting Community Support

BuddyPress Logo
BuddyPress Logo (Photo credit: Wikipedia)

We now come to a most interesting potential solution to this problem: John James Jacoby’s Indiegogo project. JJJ (as Jacoby goes by on the Twitterz and elsewhere) has been the lead developer with BuddyPress (a social networking layer over WordPress) and bbPress (WordPress-based forum software) for nigh on to forever. As a result of his talent and skills, he got hired at WordPress’ parent company, Automattic, and worked there for some time. Over time, BuddyPress, bbPress and a sister project, GlotPress (translations for WordPress) begin to suffer from lack of attention.

English: Logo of the software "bbPress&qu...
Logo of the software “bbPress” (Photo credit: Wikipedia)

Making a long story shorter, John believes that with six months of sustained, concentrated attention on these three projects, he can make a difference in these areas:

  • Query and caching performance improvements to both BuddyPress and bbPress (to help them power the almost 20 million user profiles and the immense amount of activity going into them from all the support forums)
  • Media & Attachment support in BuddyPress
  • Per-forum moderation in bbPress to help with plugin & theme moderation on

This piece at WPTavern shares more of the story. My favorite quote:

WordPress is more community than software, yet the software that powers the community has nobody working on it full time



At WordCamp San Francisco in October, he was encouraged to seek community funding for this project. After some thought and planning, on November 11, the 30-day campaign went live at Indiegogo.

As happens so often with crowdfunding projects, JJJ hit 80% of his $50,000 goal in 48 hours. Since then, it’s been a little slack. Now he’s got another $6000 to go for the full six months.

Valuing open source developers

Just last week (before I knew about this campaign), I wrote about the value of open source communities. Now the WordPress community has the opportunity to prove its value in concrete put-your-money-where-your-mouth-is terms: Can it fund a developer (or more than one) to complete essential tasks without having to sacrifice on his/her standard of living? Can you make a living just scratching your itches?

John James Jacoby lives pretty close to me, and we’ve met a few times at WordPress Meetups and WordCamp Milwaukee. He is a terrific guy, and unquestionably devoted to the success of BuddyPress and WordPress. We should be able to come through for him in the coming days. I also hope that this followup idea from Josh Strebel from Pagely to make this type of crowdfunding project more formal and more permanent makes some headway in the process. Yeah, I’m going to kick in a pittance too, right after payday in 7 days. Maybe you have a payday coming up too? What is WordPress worth to you?


Book Review: WordPress 3.7 Complete

WordPress 3.7 Complete
WordPress 3.7 Complete

The fine folks at Packt Publishing asked me to have a look at their latest WordPress book, WordPress 3.7 Complete. This is the third edition in the WordPress Complete series, by Karol Krol and Aaron Hodge Silver. I am happy to recommend it to folks looking for a good introduction to WordPress.

Full disclosure: I read the edition covering WordPress 2.7, when I started getting serious about learning WordPress, but missed the edition that covered v3.0.

Packt specializes in web development and open source software books, so you shouldn’t be surprised that the strongest parts of the book are in this area. But you don’t have to know code to find good, solid information here. Chapter 3, “Creating Blog Content” offers a nice introduction to blogging that will help you start thinking about the kind of content to include in your blog, along with an introduction to the WordPress admin pages.The chapter on choosing themes has some excellent questions that you may not think to ask yourself before choosing a theme from the vast collection of choices.

While there’s a basic introduction to, most of the book’s content relates to WordPress on an independent web host. It might have been nice to note what sections (like setting up widgets and working with the Media Library) apply to both the dot-com and dot-org sites.

WordPress Complete really takes off in the second half, where Krol and Silver focus on creating and manipulating themes and plugins. I don’t know about you, but when I started messing with code, the first thing that scared me was the likelihood of me breaking stuff that was already working. Krol and Silver help break down that fear by showing you how to safely remove your header, footer and sidebar from an existing theme’s index.php file (“What, you want me to break my home page!?”), customize each new template file, and reassemble the new modules so that it all works.

Another big plus for the beginning developer is an extensive section about building themes from scratch. After comparing this method with constructing themes with the help of a theme framework like Genesis, Thesis or Thematic, they advise:

… create your first theme manually, just to learn the craft and get to know all the basic structures and mechanisms sitting inside WordPress. Then, as the next step in your mastery (if you’re planning to work on other themes in the future), you can pick one of the popular theme frameworks, get deeply familiar with it, and use it as the base for your future themes from that point on. Such an approach will allow you to reach maximum time efficiency and save you the effort of dealing with the core set of functionalities that every theme needs, regardless of the design or purpose.

After demystifying the process of theme and plugin creation, and introducing BuddyPress and WordPress MultiSite, Krol and Silver focus the last two chapters on “Creating a Non-Blog Website” using the increasingly powerful content management features WordPress offers.

You’ll learn a bit about using Pages to create corporate and e-commerce sites, membership sites and the like. Can I say that as an author, I especially appreciated introducing custom post types by way of creating distinctive ways of listing books on your site? You may see something like this on soon.

Overall, WordPress 3.7 Complete is a fine introduction to WordPress and web development. Incidentally, don’t be upset that the book misses out on WordPress 3.8. With the increasing speed of WordPress core development, all us authors are at a distinct disadvantage–we can only type so fast!

So what do you look for in a WordPress book? Have you read this one? Comments always appreciated.

Enhanced by Zemanta

Some Notes on New Stuff in WordPress 3.1

Matt Mullenweg during the conference WordCamp ...
Image via Wikipedia

As you may know, WordPress v3.1 is going to be out very soon. The second release candidate has been out for two weeks now, and the dev team is meeting as I type this to squash the last bugs and plan for more WP goodness in 2011.

I’ve been working with v3.1 for the last month or so, adding new material for the second edition of WordPress in Depth, which should be out in the spring. Last week, I shared some of my excitement about the new features with Web414, Milwaukee’s Web Community.

Aaron Brazell has a great summary of the new stuff in “Ten Things You Need to Know About WordPress 3.1.” For my talk, I reorganized his list in terms of who will get the most use and/or benefit. In this post, I’m going to focus on the new features that impact ordinary users the most.

Post Formats: I’m really looking forward to using this feature, as it’s likely to get me posting more. Post formats allows bloggers to use different types of posts with different rules about headings and such. You can see what different post types can do in Matt Mullenweg‘s blog and in Tumblr.

The downside for ordinary users is that your theme has to support Post Formats before you can use them. This is easy to do (involving adding one line of code to the functions.php file, and then setting up the special formatting), but … it has to be done. I certainly hope that this is widely implemented, on both self-hosted ( sites and

Internal Linking: We’ve had this on dotcom blogs for a couple of months now, and I’m a big fan. Often you’ll want to refer visitors to older posts to give them context for what you’re writing now. Or you’re live-blogging a conference and want to give links to all the other sessions you’ve been writing about. Before internal linking in the visual editor, this practice usually involved opening another browser tab, a site search and the usual copy/paste linking ritual. Time-consuming and error-prone only begins to describe the process.

Now you just open the editor’s link dialog, and you can see recent posts automatically, and search for not-so-recent posts:

Admin Bars: Another feature that dot-com and BuddyPress folks have had the opportunity to test, and apparently so nice Twitter copied it. When you’re logged in to your site, you get the little black bar at the top with handy tools like Add New Post/Page, Change Widgets and the like. If you’re in a multisite network, you stay logged in and get the same bar.

Theme Filters: Aaron’s description here befuddled me a little bit, as those who attended the Web414 talk can confirm. He wrote “ users are probably familiar with the theme filter that those bloggers have had access to. With Theme Filters, users are able to quickly drill down on possible themes to install and use based on criteria such as number of columns, features, etc.”  You could interpret that to mean that you couldn’t access theme filters when looking for new themes in the directory. You’ve been able to do that for as long as I can remember. Further research clarified what was new here.

If you’ve got a lot of themes installed, but not activated, you probably have a really long page filled with thumbnails and descriptions of these “Available Themes.” Up to now, you had no way to search, or otherwise compare that collection for features you might want. This changes in 3.1. Now you have a Search Themes box, and a Feature Filter too.

Obviously, this is a benefit to folks who develop WordPress sites for other people and need to select from a multitude of themes. You can also see the benefit if you like to change your theme often. Be aware that this only works with themes already installed. You still have to go to Install Themes to search the wider directory.

Well, that’s more than enough for now. There will be more on WordPress 3.1 to come. Meanwhile, are there features you’re playing with or looking forward to? What about things you don’t like? Your thoughts are always appreciated!