“VIP Scanner” Plugin Updated with Exports and a Brand New Design

WordPress.com VIP themes and plugins represent over 5 million lines of code, with thousands more committed every day. Since we manually review all of this code, we try to make it as easy as possible for developers to double-check their code against the standards that we look for, streamlining the process for everyone.

Version 0.4 of the VIP Scanner is another step in that direction. We’ve refreshed the interface to make it easier to use: instead of choosing the theme and the type of review you want to run, we’ll automatically show you the results for the current theme. Issues are broken down by severity, with the most pressing issues at the top. And we’ve moved Notes (these are issues that you should be aware of, but are not strictly necessary to fix) to another tab to help reduce clutter.

We’ve also added the ability to export your VIP Scanner results, so you can submit them alongside your theme, to our team for review. We’ll be polishing this a bit more in future iterations, but for now it will simply download a Markdown formatted text file with the details of your review. If you’re using the VIP Theme Review scan, you’ll also be asked a set of standard questions, before you run the export, which will help us understand the thought process involved in building the theme. The answers to these questions will also be included in the export.

As always, pull requests are welcome over on Github.

Introducing: VIP Quickstart

Update:
VIP Quickstart is deprecated as of March 13, 2017. Support for Quickstart will continue through April 21, 2017. For new environments, we recommend using Chassis or VVV as detailed in the Local Environment documentation.

Previous Information:

One of the pain points we often see in the development process is getting a development environment set up. Today we’re introducing VIP Quickstart to fix that. The goal of VIP Quickstart is to provide an environment similar to what you would be deploying to on WordPress.com that’s also quick and easy to setup.

VIP Quickstart is a mix of Vagrant, Puppet, Bash scripts, and some PHP code that will help you quickstart your WordPress.com VIP development. The setup installs a base Ubuntu 12.04 box running PHP, Nginx, and MySQL. The WordPress installation will be WordPress multisite from the latest trunk build. It also includes the WordPress Developer plugin along with all the recommended VIP plugins and the VIP Shared Plugins repository. Finally, there are some WordPress.com customizations and WP-CLI.

Updates will be pushed out on Github. You can always make sure you’ve got the latest version of Quickstart by running the VIP init script that’s included. If you’re already familiar with Vagrant, all the built in Vagrant commands will still work as well.

What’s Next

Currently we’re working on a Windows installer that should be available shortly. After that the plan is to add support for PHPMyAdmin along with some other tools. We want to include any tools that make sense for WordPress development in general and VIP specifically, so if you’ve got ideas we’d love to hear them.

In the future, issues involving local development environments will be unsupported unless you’re using Quickstart.

Follow Along

You can follow development on Github. If you come across problems, we’d ask that you first check the issues on Github and if the problem hasn’t already been reported, go ahead and create a new one. As always, pull requests are welcome.

Upcoming Demo: How Parade.com uses the WordPress Theme Customizer

Have you been curious about the WordPress Theme Customizer?

It’s used by many theme designers to allow users to quickly preview and customize themes from the admin interface, but many VIPs are using it as a way to give editors and content owners more control of the site’s appearance without having to delve into the code. The Theme Customizer can allow them to preview and publish significant personalizations or changes to a site’s home page (or other page) with just a few clicks, allowing for the editorial team to react quickly to the latest news stories.

Parade.com's Demo of the Theme Customizer

The WordPress.com VIP team is featuring a deeper look at the Theme Customizer with the help of the Parade.com team.

During the free 30-minute demo, we’ll take a deeper look at the Theme Customization API and why it’s interesting, how it works from a technical standpoint, and we’ll see some examples from Parade of what it can do, as well as how these customizations were enabled at the code level. The demo will be led by Parade.com’s Senior Developer, Taylor Buley (Twitter / Github), and he’ll cover both technical & non-technical information so all participants are welcome to attend. A brief Q&A will follow the demo.

Time & Date: Wednesday, August 28th, at 10am PT. Find what time the demo is in your timezone.

Want to attend this free demo? Register here

Check out the teaser video below to get a taste of what’s in store during the Theme Customizer demo.

[wpvideo 0shI3QC2]

Want more information about using WordPress for big brands and enterprises? Get in touch.

2013 VIP Intensive Developer Workshop Recap

One month ago, dozens of WordPress.com VIP clients, partners, and enterprise WordPress users gathered for our second WordPress.com VIP Intensive Developer Workshop in Napa, California.

WordPress.com VIP Workshop 2013 Group photo

The event was decidedly bigger than the inaugural event and it sold out quickly. We wanted to keep the intimate feeling of the exclusive event so all attendees had a chance to interact and get to know each other during networking breaks and dinners.

We’ve gotten some great feedback from the attendees:
95% of participants surveyed said
they would recommend the conference to their colleagues
97.37% said they would come again! 

This year we added flash talks from select VIP clients including CBS, Simperium, AlleyInteractive/KFF, PMC, Local TV, The Washington Post, Time Inc, Grist, Metro UK, Quartz, The New York Times, and Maker Media, about how they are using WordPress and WordPress.com VIP to power their businesses. We’ll be reposting those presentations right here on WordPress.com VIP News.

Developers from WordPress.com VIP and the extended Automattic team lead hands-on training sessions that covered everything from Security, Advanced Caching Patterns, MySQL Query Optimization, Building JS Apps with WordPress, Front-end performance, Backend optimization, Automated Testing with WP, Building Mobile sites with WP, in-depth looks at WordPress.com functionality, and more.

We also dedicated some time to open discussions on subjects which are dear to VIP clients like development workflow, single sign-on, administrator tools and utilities, and content embeds and integrations. The open format gave everyone a chance to share their ideas, solutions, and for VIPs to learn from each other directly as well as from the WordPress.com VIP team.

A special thanks to Jeff Veen (VP, Adobe) for his insightful welcome speech, and to all the VIP clients and partners who attended! Below are some of our favorite moments from the event.

We’re ready for what’s next, too!

The WordPress.com VIP team is busy planning the next installment of the VIP Workshop, as well as a series of VIP training this fall which should be interesting for both developers and superusers such as site administrators, managers, and editors!

If you’d like to receive word of the next WordPress.com VIP training or networking event, sign up for the WordPress.com VIP News & Announcements newsletter to receive the latest, and stay tuned to the VIP News site!

[vip-mailchimp title=”Subscribe to WordPress.com VIP News & Announcements” segment=”VIP News”]

If you have any questions about WordPress.com VIP Services, be sure to get in touch!

100,000 Commits on WordPress.com VIP

Last week, a developer at Time Inc. made a milestone commit on WordPress.com VIPr100000!

Our WordPress.com VIP clients commit and deploy code daily, and often development teams will commit several times a day to keep up with their changing site features and improvements. We do several checks on code optimization and security before approving a commit for deployment, and we’re really proud to get 90% of commits deployed within two hours of submission. We also unveiled automatic deploys for static CSS and images last year, which has made deploying instantaneous for thousands of client code commits.

It took roughly 75,000 deploys to help reach this milestone commit. We began tracking deploys in March 2011, and as you can see in the chart below, we doubled the number of deploys from 2011 to 2012, and are on track to do so again this year.

Screen Shot 2013-04-01 at 10.13.54 PM

And, for those who are interested, here’s a peek at commit activity over the course of a week at WordPress.com VIP (times in GMT):

Screen Shot 2013-04-01 at 10.20.39 PM

While we’re looking at commit data, here’s a quick nod to the top five committers from the last 365 days: I.N. from Global News (942), C.B. from GigaOM (791), F.I. from Dawn Media (784), V.K. from COED Media Group (652) and E.G. from CBS Local (605).

And finally, here’s a peek at deploys from WordPress.com VIP over the last 3 years.

Screen Shot 2013-04-01 at 10.13.44 PM

Interested in learning more about WordPress.com VIP Cloud HostingGet in touch.

2013 WordPress.com VIP Intensive Developer Workshop

The WordPress.com VIP Workshop is currently in wait list. Click here to add yourself to the wait list.

The 2013 WordPress.com VIP Intensive Developer Workshop is approaching and filling up fast! 

We’re gathering more than a dozen Automattic engineers to teach at the WordPress.com VIP Intensive Developer Workshop in May 2013, and many members of the VIP team will be there as well. If you’re a VIP client or partner, you want your developers to be there so they can learn from our extended team here at WordPress.com VIP and Automattic, exchange ideas with other VIP developers, and share what your team is working on, too.

Similar to last year’s event, participants can expect the same great networking lunches and dinners, in-depth WordPress curriculum and conversations, and some surprises, too. We’re also planning some collaborative sessions where WordPress.com VIPs can share their own experiences with building VIP-scale websites using WordPress, their workflows, shortcuts, and best practices, too.

Just a reminder, of those who provided feedback about last year’s event:

  • 100% would recommend the conference to a colleague
  • 96% plan on attending again & 4% will send someone else from their company

The event is almost filled up, and soon we’ll open up the waiting list, so be sure to sign up now! The WordPress.com VIP Workshop is currently in wait list. Click here to add yourself to the wait listPlease note: this event is open to select VIP clients and partners, and to the general public as space permits.

Here are more details about the event and below are some pictures from last year’s event.

  • May 13: Arrival in the afternoon with a special welcome from some special guests, followed by a reception dinner.
  • May 14 & 15: Full days of training with VIP instructors, with special networking dinners for all participants.
  • May 16: Farewell breakfast and morning departures.

Pricing: $3600 per person, excluding airfare. Airport transfers from SFO, meals and lodging (3 nights) included. Here’s more information on the event.

If you have any questions, feel free to leave a comment below!

 

Update: What’s Coming Up With WordPress 3.6

The updated target date for WordPress 3.6 Beta 1 is March 27.

By the time Beta 1 rolls around, the core team will have the feature set complete, which means the time for bug testing 3.6 against your themes and plugins will have arrived. According to the 3.6 project schedule, the target date for 3.6 launch is April 29.

Here’s a quick update on where the 3.6 features currently stand. If you aren’t caught up on the features, please take a peek at this introduction post.

Post Formats UI: The UI for post formats is getting a refresh (featuring a drop down selector for formats and better previewing) to make it easier to use and faster to publish. You can take a peek at the wireframes here, and follow along the conversation here.

Autosave and Post Locking: The main goal of this update is so that users never lose a post. This is done by leveraging browser-level storage in modern browsers for situations where users lose their internet connections or their browsers crash. With this enhancement, edits are stored locally and synced back to WordPress at the next possible opportunity. If you are logged out while on an admin page, you will be notified and allowed to log in straight on the page so that you won’t lose your work. As for post locking, if you arrive on a page that is currently being edited, you will be given the option to “take over” or go back.

Revisions: The UI for comparing previous revisions of a post has been significantly updated, including a scrubber bar that allows the user to move forward or back in revisions, and colored text to indicate content that has been added or removed. Take a look at a rough mockup here.

Editorial Flow: This feature has been removed from the 3.6 cycle, but the team is planning to tackle it in future releases.

Menus: The UI for creating custom menus has been significantly cleaned up, with new checkboxes to select where the menu will be displayed in the theme, accordion styling to menu items (being tested), new help text and keyboard accessibility for rearranging menu items.

Twenty Thirteen: As Mark Jaquith writes: “With Twenty Thirteen we’re taking a bold stance: this theme was meant for blogging, and it’s not a blank canvas. It comes pre-marinated with playfulness and warmth and opinions.” Take a peek at a demo of the new Twenty Thirteen theme here.

Where can I find more information?

If you’re not familiar with Make WordPress Core, it’s a good blog to visit. It tracks the open-source development of WordPress, and is the homebase of much of the development discussion.

How do I get involved?

Want to help make WordPress better? Take a peek at the Core Contributor Handbook, or sit in on the weekly developer chat. They will need a lot of help with bug testing and squashing in the coming weeks. Lots of members of the VIP community contribute to core, so you’ll see familiar faces.

When is 3.6 coming to WordPress.com VIP?

Shortly prior to the release of 3.6 on WordPress.org, the 3.6 features will be merged into WordPress.com VIP. This will most likely happen in April, and we will be posting updates here in the weeks before to notify you. If you aren’t already, at that point you’ll need to be testing against trunk, getting the latest nightly build or even better, using an SVN checkout of trunk to test how your sites work on 3.6. You can also use the Beta Tester plugin to easily update beta releases and test.

What’s Coming Up With WordPress 3.6

Some really neat features are going to be included in WordPress 3.6, which is rolling out this spring.

Here’s a quick peek at the road ahead (but know that everything listed here is tentative, as it is still under development):

Overview: The focus of WordPress 3.6 is “Content Editing,” paying special attention to editorial workflows, revisions, autosave, editing, and post formats.

Autosave: The goal of 3.6 is that users should never lose posts because of “expired cookies, loss of connection, inadvertent navigation, plugin or core errors on save, browser crashes, OS crashes, cats walking on keyboards, children drooling in keyboards, etc.” This may include autosaving to the browser’s local storage, and log-in expiration warnings. They are also looking at a post locking functionality to prevent people from overwriting each other’s changes.

Editorial Flow: The features to be added to 3.6 are custom post statuses, which is the ability to add custom statuses like pitch, assigned, in-progress, etc., and draft revisions, which allow edits to already published posts be saved as drafts before taking place of the original post. They are currently seeking use cases for both features to better understand how they will be used.

Revisions: The revisions tool will get a little TLC — bug fixes, better user interface, and adding visual representation of what was added/removed in each revision.

Post Formats: The big update to Post Formats for 3.6 is the admin user interface. They are currently seeking wireframe ideas for the user interface for each post format (i.e. chat, quote, link, image, video). Folks from our Featured Partners are contributing to this feature: Helen Hou-Sandi from 10up is lead, and Pete Mall from Range is backup.

Custom Menus: The main focus for 3.6 will be improving the user interface for custom menus, which users have found confusing. You can follow developments on this ticket.

Where can I find out more information?

If you’re not familiar with Make WordPress Core, it’s a good blog to visit. It tracks the open-source development of WordPress, and is the homebase of much of the development discussion.

How do I get involved?

Want to help make WordPress better? Take a peek at the Core Contributor Handbook, or sit in on the weekly developer chat. Lots of members of the VIP community contribute to core, so you’ll see familiar faces.

VIP Intensive Developer Workshop Recap

A little more than a week ago, the VIP Services team hosted the 1st VIP Intensive Developer Workshop in Napa, California.

We wanted a small, intimate event, and it sold out quickly with a healthy waiting list of hopeful attendees! The intensive workshop mixed in-depth developer topics & discussion with lively onsite and offsite dinners in the beautiful setting of Napa, California.

We’ve gotten some great feedback from the attendees, but what was absolutely encouraging was this:

  • 100% would recommend the conference to a colleague
  • 96% plan on attending again & 4% will send someone else from their company

If you’d like to be notified when the next VIP Event (partner meetups, networking events, training, and conferences) is announced, insert your email address below – we’ll send out event announcements and give you the first opportunity to sign up for the next one!

If instead you’d like the VIP Services team to do private training for your developer or editorial teams, get in touch by filling out our Contact form.

For occasional announcements about upcoming VIP Events, insert your email address below.
[vip-mailchimp title=”Subscribe to VIP Conferences and Events” segment=”VIP News”]
Below are some photos from the event – we hope you’ll be there next time!

Open-sourcing the Code Comments Trac plugin

At Automattic we love open-source software and try to make more of it. That’s why today we are open-sourcing the Code Comments Trac plugin. We developed it to help us do better and quicker code reviews. Every month the VIP Services team reviews tens of WordPress themes and plugins making sure the code is secure, scalable, and follows the best practices before deploying them on WordPress.com.

In order to get the feedback to our clients faster and track when a theme or plugin is ready to go, we developed the Code Comments Trac plugin. The plugin allows us to leave line-by-line comments on the code, so that all feedback is in context. After that, we create tickets out of the comments and assign them to the theme or plugin developers.

In the end, when all issues are cleared, the code goes live on the client’s WordPress.com VIP website.

If you use Trac and if you do a lot of code reviews, or you just want to leave comments on code, changesets, or attachments, check out the Code Comments Trac plugin on github:

Ready to become a VIP Services Client? Some of the world’s biggest brands rely on WordPress.com VIP Services.

Scott Taylor on WordPress + Memcached

Scott Taylor, Software Engineer III at eMusic, recently posted a comprehensive article on using WordPress + Memcached.

eMusic relaunched on WordPress a couple of months ago, and it’s great to get Scott’s perspective on a key component of their setup.

Here is a quick blurb, and be sure to go read the full post for all the details:

One of the most bizarre critiques of WordPress that I often hear is “it doesn’t come with caching” – which makes no sense because Cache is one of the best features of WordPress out of the box. That’s kind of like saying: “my iPod sucks because it doesn’t have any songs in it” – when you first buy it. Your iPod can’t predict the future and come pre-loaded with songs you love, and your WordPress environment can’t come already-installed without knowing a minimal number of things. You have to pick a username / password, you have to point at a database, and if you want to cache, you have to pick how you want to cache (you don’t HAVE to cache – but really, you HAVE to cache).

Memcached (pronounced: Mem-cash-dee), or Memcache-daemon, is a process that listens by default on port 11211. Like httpd (H-T-T-P-daemon), it runs in the background, often started automatically on server load. A lot of huge websites use Memcached – at least: Facebook, YouTube, and Twitter.

[Read the full post]

Key Differences Between Validation and Sanitization

VIP Services developer Daniel Bachhuber shares some tips on writing better code for your WordPress site:

Your code works, but is it safe? When writing code for a high-profile environment, you’ll need to be extra cautious of how you handle data coming into WordPress and how it’s presented to the end user. This commonly comes up when building a settings page for your theme, creating and manipulating shortcodes, or saving and rendering extra data associated with a post.

There’s a distinction between how input and output are managed, however.

Validation: Checking User Input

To validate is to ensure the data you’ve requested of the user matches what they’ve submitted. There are several core methods you can use for input validation; usage obviously depends on the type of fields you’d like to validate. Let’s take a look at an example.

Say we have an input area in our form like this:

<input type="text" id="my-zipcode" name="my-zipcode" maxlength="5" />

Just like that, we’ve limited my user to five characters of input, but there’s no limitation on what they can input. They could enter “11221” or “eval(“. If we’re saving to the database, there’s no way we want to give the user unrestricted write access.

This is where validation plays a role. When processing the form, we’ll write code to check each field for its proper data type. If it’s not of the proper data type, we’ll discard it. For instance, to check “my-zipcode” field, we might do something like this:

$safe_zipcode = intval( $_POST['my-zipcode'] );
if ( ! $safe_zipcode )
$safe_zipcode = '';
update_post_meta( $post->ID, 'my_zipcode', $safe_zipcode );

The intval() function casts user input as an integer, and defaults to zero if the input was a non-numeric value. We then check to see if the value ended up as zero. If it did, we’ll save an empty value to the database. Otherwise, we’ll save the properly validated zipcode.

This style of validation most closely follows WordPress’ whitelist philosophy: only allow the user to input what you’re expecting. Luckily, there’s a number of handy helper functions you can use for most every data type.

Sanitization: Escaping Output

For security on the other end of the spectrum, we have sanitization. To sanitize is to take the data you may already have and help secure it prior to rendering it for the end user. WordPress thankfully has a few helper functions we can use for most of what we’ll commonly need to do:

esc_html() we should use anytime our HTML element encloses a section of data we’re outputting.

<h4><?php echo esc_html( $title ); ?></h4>

esc_url() should be used on all URLs, including those in the ‘src’ and ‘href’ attributes of an HTML element.

<img src="<?php echo esc_url( $great_user_picture_url ); ?>" />

esc_js() is intended for inline Javascript.

<a href="#" onclick="<?php echo esc_js( $custom_js ); ?>">Click me</a>

esc_attr() can be used on everything else that’s printed into an HTML element’s attribute.

<ul class="<?php echo esc_attr( $stored_class ); ?>">

It’s important to note that most WordPress functions properly prepare the data for output, and you don’t need to escape again.

<h4><?php the_title(); ?></h4>

Also, as there are always exceptions to the rule, there are a selection of user-submitted data that needs to be validated and sanitized. Freeform text areas would fall into this category. For this, you can run user data through sanitize_text_field() or any of the wp_kses_*() functions.

To recap: follow the whitelist philosophy with data validation, and only allow the user to input data of your expected type. If it’s not the proper type, discard it. Sanitize data as much as possible on output, and a selection needs to be sanitized on input too.

Hit us with your questions or tips in the comments.

Primer: WordPress photo gallery without a plugin

Otto has created a very thorough primer to create a WordPress photo gallery without a plugin. He walks you through understanding pictures and galleries, creating and modifying an image template, and tweaking image and thumbnail sizes.

He reminds us:

You don’t really need plugins to create photo galleries. WordPress has a huge amount of gallery functionality built right in. You just need to make your theme smarter in order to take advantage of it.

Click through to read Photo gallery primer on Otto on WordPress.

Want WordPress for your site? Get.WordPress.com

Cheezburger Network Open Sources Their WordPress Administration Panel

WordPress.com VIP Cheezburger Network, where you get your daily LOLz from one of their 50 popular sites like I Can Haz Cheezburger? and FAIL Blog, have shared the code of their WordPress theme administration panels.

Called CheezCap, it’s a simple library for easily creating custom admin panels.

Screenshot of CheezCap

Cheezburger Network uses a single shared theme across all their sites. In order to avoid having to create conditionals and other per-blog modifications in their theme, they developed CheezCap. Any of the administrators can update the options controlling the layout, design, colors, etc, without having to dig into the theme code.

When asked what motivates his engineering team to participate in the WordPress community, CTO Scott Porad replied:

I can say without hesitation that WordPress has had a hand in the success of Cheezburger. So, to the extent that we can help other people be successful with WordPress, we’re on board!

What I meant to say is… All aboard the WordPress Express! Choo Choo!

WordPress Top Demanded Skill on Elance

Since last year when we wrote about “WordPress in Demand on Elance“, WordPress has surged into the top ten, and now is the sixth most in demand skill on Elance!

Elance Top Overall Skills in Demand Q2 2010

Online publishing dominates this list. It’s exciting that the ever evolving WordPress, built on it’s PHP, MySQL, and CSS stack, continues to be the web development platform in demand.

Elance’s 2010 Q2 Online Employment Report also includes a single profile, that of Ron Z Zvagelsky, highlighting his success as a WordPress Expert on Elance.  Represent!

WordPress Resources for Publishers

One of the biggest strengths of WordPress as a publishing platform is the depth of our community of consultants, developers, designers, and hosting providers. It can be tricky to figure out where to find pointers to awesome WordPress partners, so we’ve pulled together this mini-guide for publishers looking for help.

VIP Services: Hosting and Support
From the team that runs WordPress.com, at Automattic, we also offer VIP Services in the form of Hosting and Support. We’ve worked with more hosts than you can imagine, and in our opinion, the companies in our hosting directory represent some of the best and the brightest of the hosting world. If you’re a publisher with significant amounts of monthly traffic, VIP Hosting by WordPress.com is another option for your hosting needs. If you’d prefer to run WordPress on your own servers, but want some extra optimization, streamlining, or security help to future-proof your site for the traffic to come, you’ll want VIP Support.

CodePoet
CodePoet is a shortlist of WordPress consultants brought to you by Automattic, the company behind WordPress.com. As the world’s largest operator of WordPress blogs (over 16 million and counting), we receive a steady stream of requests from people looking for WordPress savvy web design and software development firms. In response we’ve started CodePoet, a directory of consultants who specialize in building beautiful and efficient WordPress sites.

How-to: Nginx as a front-end proxy cache for WordPress

From Harvard Law’s Dan Collis-Puro, a how-to on optimizing your WordPress MU install, using Nginx as a front-end proxy cache for WordPress:

We put an nginx caching proxy server in front of our wordpress mu install and sped it up dramatically – in some cases a thousandfold. I’ve packaged up a plugin, along with installation instructions here – WordPress Nginx proxy cache integrator.

You can read the full details on Dan’s blog and grab the plugin from the WordPress.org plugin directory.

[ Visit http://blogs.law.harvard.edu/djcp ]

WordPress and Windows Azure

This week I had a unique opportunity to appear at Microsoft’s Professional Developer Conference in Los Angeles, to demo four open source technologies — WordPress, Apache, MySQL, PHP — running on Microsoft’s new EC2 competitor called Azure.

WordPress and Windows Azure probably aren’t the first two things you’d think of together. WordPress has been free and open source software from the very beginning, Windows not so much, but we’ve always supported as many platforms as possible and for at least 4 years now you could run WP on Windows and IIS (Internet Information Services).

Choice and competition are great for spurring innovation and better for users and I believe open source software is a good thing even if it’s on a proprietary platform. (Just like we have an open source iPhone application, or encourage people to use Firefox on Windows.)

If you’re interested, check out the full transcript of the keynote from PDC or watch the video of the keynote.

We also created this FAQ in case you had more questions about what was announced.

What did you announce about WordPress at Microsoft PDC 09?
As part of the introduction of the Windows Azure platform, we announced that self-hosted WordPress can be run in an Azure environment on an open source stack of Apache, MySQL, and PHP. Showing MySQL in particular at a Microsoft conference was unusual.

Are you moving WordPress.com to Azure?
No. WordPress.com, which is Automattic’s hosted blogging service, is going to stay on its existing infrastructure. Martin Cron from the Cheezburger Network launched a new blog Oddly Specific on Azure, which some people confused with Automattic.

Do you use Azure at all?
Yes, we’ve been testing out their blob storage as an alternative to Amazon S3 and Rackspace Cloudfiles. We don’t currently use it in production.

Doesn’t this conflict with your open source orientation?
No. We actually think it’s going to help the spread of open source to have the Free and open Web stack get more support and deployment through Microsoft’s cloud infrastructure, which they’re investing quite a bit in. Besides, as I like to say, once you get a taste of Freedom it’s hard to go back. 🙂

WordPress in Demand on Elance

Elance, a marketplace “where businesses connect with independent professionals to get work done”, has published their latest Elance Online Work Index. In this index they rate which skills are most in demand in their marketplace based on 100,000 new jobs posted on Elance over recent months:
elance-wordpress

The #1 in demand skill is PHP, followed in the #2 slot by MySQL. The top publishing platform, with an overall ranking of #13, is WordPress, up 2 spots from #15 since the last index. Joomla comes in at #29, previously 18th overall, and the next publishing platform listed is Drupal at #75, previously 46th in the last index.

Since WordPress is PHP/MySQL, WordPress professionals out there are in a great position with the most in demand skills.

You may recall back in January oDesk posted about similar trends in their marketplace as well.

[ Read more on the Elance blog ]

oDesk Reports “WordPress” Fastest Growing In-Demand Skill in 2008

Thanks to Becca for sending in word that oDesk, “an online staffing marketplace and management platform”, reported the other day on the fastest growing set of skills that are in demand on the oDesk platform.  Based on job/project listings WordPress came out on top with a 427% increase since last year :

The numbers in the table below show the number of job postings on oDesk in which the skills were listed as “required,” and their relative increase from the end of 2007 to the end of 2008. You will notice some variance in the numbers between the table and the charts below as the numbers on the charts show keyword mentions in the job post titles, not required skills.

Skill/Experience Openings Last 60 Days 2007 Openings Last 60 Days 2008 Change
WordPress 37 195 427.0%
Writing* 32 138 331.3%
Excel* 30 118 293.3%
SEO 73 250 242.5%
XHTML 24 61 154.2%
Linux 23 58 152.2%
Drupal 70 169 141.4%
Joomla 157 352 124.2%
CSS 119 250 110.1%
Graphic Design* 20 42 110.0%

*Because writing, graphic design, and excel have small starting points, we believe their change reflects oDesk growth, not a general trend.

The growth in WordPress demand on oDesk has been steady throughout 2008:odesk-wordpress

If you are looking for WordPress help on projects, in addition to the resources we’ve listed here, oDesk is a great place to check-out as it currently has over 2700 WordPress developers listed in their system.

[ Visit oDesk blog ]

Post Pagination

I received a few inquires this week about how to go about paginating a post in WordPress.  Turns out it’s super simple and built-in to WordPress core, as detailed below in the Codex article:

Did you know you could split a single post up into different web pages? Using the Next-Page Quicktag from the Write Post Panel, you can break a single post up into different web pages.

Called the Page-link tag, place your cursor in the spot where you want a page break to appear in your post and click the Next-Page Quicktag. You can use it throughout a long post to make two, three, four, or more pages out of the single post.

For more information vist http://codex.wordpress.org/Styling_Page-Links

Arbu: “WordPress Doesn’t Just Blog”

Arbu, a new media agency based in the UK, just published a post titled “WordPress Doesn’t Just Blog …”:

… it rocks, rolls, cleans our teeth and rummages around in our psyche. Well, perhaps not, but while editing the Colintraive & Glendaruel Community Website (which is run using WordPress and a basic hack of Kubrick) it occurred to me that Arbu has implemented websites using WP for all sorts of purposes and rarely for straight blogging. In fact when I thought about it properly, very few of the sites we produce are actually blogs.

In the post they highlight community, commerce, social networking, and other types of sites being built with WordPress.

[Visit arbu.co.uk ]

Alex King Interviewed by Download Squad

Alex King of Crowd Favorite, chats with Download Squad about WordPress and his favorite plugins on the latest Download Squad Podcast:

[youtube=http://www.youtube.com/watch?v=eqLasAS99xc&rel=1]

The team at Crowd Favorite has worked on many WordPress projects, and offers the following WordPress services:

Custom plugin development services, WordPress as a CMS development, WordPress theme design and development, WPMU (WordPress Multi-User) development, integrations, and general “how can I do this?” services for WordPress.

If you need to do something with, to, or in concert with WordPress – we can make it happen.

Tips on Optimizing Performance for Self-Installed WordPress

Michael Biven, CTO of Laughing Squid, wrote a great post highlighting how to optimize your self-installed WordPress setup:

Taking responsibility of your WordPress site by keeping it up to date to the latest version and managing it’s load on the server hosting it is just as important as the content you’re writing for it. Security updates, performance improvements and other bug fixes will help keep your site running smoothly, but there are a few other steps you can take to improve it’s performance.

Scott Beale confirms that these optimizations have had a big impact on the Laughing Squid Blog:

We use almost all of these recommendations on Laughing Squid , which has helped to keep server loads low and things running smoothly when it comes to front page Diggs and ongoing high traffic from sources like Google search and StumbleUpon.

Read the full post on Michael’s blog: Optimizing performance for WordPress

Finding Resources for Your WordPress Project

For publishers looking to either add some capacity to their in-house WordPress efforts or would like an outside firm to work on the entire project, we maintain a list of design and software development firms who have experience with WordPress based projects.

In addition, we recommend posting to WordPress Jobs or the wp-pro mailing list if you are looking for employees or professional consultants with WordPress expertise.

Q&A with Brian Groce of Watershed Studio on the Topic of WordPress Plugins

Plugins are tools to extend the functionality of WordPress. In an email exchange I asked a leading plugin developer, Brian Groce of Watershed Studio, his thoughts on developing WordPress Plugins and how publishers should approach having a plugin created.

How did you get started working with WordPress?

I was part of the exodus from MovableType back in 2004 due to the sudden licensing changes that occurred. After looking around at all of the PHP based open source blogging and content management options I opted for WordPress since that appeared to be the direction most people were headed and the development community seemed to be pretty strong and focused on delivering a solid product that didn’t add any fluff to the core code.

What is a plugin? And what are the advantages to using a plugin?

Plugins are extensions to the main WordPress functionality which enable the use of additional features. The advantage to using plugins is that you can easily add new features that you need while leaving the core WordPress code as simple as possible, which in turn allows for easy future software upgrades of both the core WordPress software and plugins.

In what circumstances should someone use a plugin or have a developer build a custom one?

Plugins should be used when there is a feature you’d like to see added to either the administration or presentation side of WordPress. There are numerous freely available WordPress plugins, but in the event that you can’t find what you’re looking for, having a developer create a custom plugin is your best bet unless you are already familiar with PHP and possibly SQL.

What are the biggest misconceptions about plugins?

I think the biggest misconception about plugins is that if you can think it, it can be done. While that is often the case, there are instances in which a certain feature isn’t available to be “plug into” via the API. Luckily the WordPress development team is on top of it and is adding new “hooks” as versions are released. Also, there seems to be a misconception that every plugin will work on every server setup, which isn’t necessarily the case. If a plugin uses a PHP or MySQL function that is not available or activated on the server, it will not function correctly. Related, plugins may work with one version of WordPress and not another.

Which plugins have you developed?

Of the plugins we have developed, the WordPress Email Notification plugin is by far the most popular, and we’re currently working on a new version which adds a handful of new features and improved functionality. We have also developed and maintain the WordPress Category Posts plugin & WordPress Versioning plugin and assisted in the creation of the Sphere Related Content Widget. Beyond those plugins, we have created custom plugins for clients.

In your experience what are the biggest mistakes publishers make when looking to build a plugin?

The biggest mistake from what I have seen is not looking at the big picture and painting yourself into a corner. Take the time to brainstorm and think about any possible future updates and additions that you’d like to make. By doing so, the plugin can be built with the future in mind and you’ll be able to avoid adding unnecessary additional development time down the road.

What are your favorite plugins?

My favorite plugin by far is PodPress. Anyone who has ever gone the non-plugin route to setup a podcast/vidcast can tell you how much time this plugin saves you. I also like Alex King’s Share This plugin as it is very helpful in allowing readers to share a particular post with others.

Plugin update notifications are now built into WordPress. What impact will that have on developers of plugins and their users?

I think that this will help out tremendously in allowing developers to inform users of new updates. Previously this was a manual process unless the plugin author built in a mechanism to check for updates.

From a plugin developer standpoint, what improvements or changes would you like to see with WordPress?

I would love to see some more hooks added to the API. Specifically, I would like to see a hook which easily allows for the addition of buttons to the editing toolbars in both the WYSIWYG editor and in the Code View editor. Also, I would love to have a way to see what blogs are actually using your plugin(s). With the new update notifications built into WordPress 2.3, this information should be fairly easy to collect.

What tips would you give publishers looking to have a plugin developed?

First, I would suggest looking to make sure that what you’d like to do hasn’t already been done, or at least check to see that something similar hasn’t been done. If you need some additional features or tweaks to an existing plugin, contact the plugin author to see if they can create a custom version for you and if so, how much it will cost. If they can’t (many plugin developers have full-time jobs), get in touch with a seasoned developer who can. Since most WordPress plugins are licensed under the GPL, this shouldn’t be a problem.

Second, if you need to have a plugin developed from scratch, be sure to write down and possibly diagram how you want the plugin to function. Once you have that completed, contact a plugin developer and let them know what you need. Additionally, if you have a delivery deadline, budget requirements or any other special considerations, you should share these with the potential developer as well.

Typically, how long does it take to develop a plugin from start to finish?

It truly depends on a multitude of factors, but in general the total development time depends upon the complexity of the plugin and the communication times between the client and the plugin developer. It is possible that simple plugins can be written, tested and “shipped” within a week. More complex plugins can take weeks to months before the final version is in hand and quality communication is especially vital when working on more complex plugins.

What should publishers be expecting from a cost perspective when hiring a plugin developer?

The cost of having a plugin developed comes down to the amount of time involved, thus a simpler plugin will cost less that a more complex one. In addition, developer rates and time estimates may vary quite a bit. With that said, you should expect to set aside a minimum of a few hundred dollars (USD) for a simpler plugin and into the thousands of dollars for a more complex plugin.

Thanks Brian! You can read more technical information about plugins on the WordPress Codex site and browse hundreds of plugins in the WordPress Plugins directory.

Brian Groce photo Brian Groce is the founder, President and CEO of Watershed Studio, LLC. Watershed Studio specializes in installing & customizing WordPress for blogs, podcasts and as a content management system (CMS).

Ready to get started?

Drop us a note.

No matter where you are in the planning process, we’re happy to help, and we’re actual humans here on the other side of the form. 👋 We’re here to discuss your challenges and plans, evaluate your existing resources or a potential partner, or even make some initial recommendations. And, of course, we’re here to help any time you’re in the market for some robust WordPress awesomeness.