a:4:{s:5:"child";a:1:{s:0:"";a:1:{s:3:"rss";a:1:{i:0;a:6:{s:4:"data";s:3:"


";s:7:"attribs";a:1:{s:0:"";a:1:{s:7:"version";s:3:"2.0";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:1:{s:0:"";a:1:{s:7:"channel";a:1:{i:0;a:6:{s:4:"data";s:61:"
	
	
	
	




















































";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:1:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:16:"WordPress Planet";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:28:"http://planet.wordpress.org/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:8:"language";a:1:{i:0;a:5:{s:4:"data";s:2:"en";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:47:"WordPress Planet - http://planet.wordpress.org/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"item";a:50:{i:0;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:98:"WPTavern: Mandrill to Discontinue Free Tier for Transactional Emails, Developers Seek Alternatives";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51826";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:107:"http://wptavern.com/mandrill-to-discontinue-free-tier-for-transactional-emails-developers-seek-alternatives";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3123:"<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/paper-plane.jpg" rel="attachment wp-att-51834"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/paper-plane.jpg?resize=1024%2C444" alt="photo credit: Paper Plane - (license)" class="size-full wp-image-51834" /></a>photo credit: <a href="http://www.flickr.com/photos/8176740@N05/5703519506">Paper Plane</a> &#8211; <a href="https://creativecommons.org/licenses/by/2.0/">(license)</a>
<p>This week Mandrill announced that it will be <a href="http://blog.mailchimp.com/important-changes-to-mandrill/" target="_blank">discontinuing its free tier for transactional emails</a>. As of March 16th, new Mandrill users will create their accounts through MailChimp and existing users will be required to merge their accounts with a MailChimp account where they will be charged <a href="http://blog.mandrill.com/important-changes-to-mandrill.html" target="_blank">$20+/mo</a> for transactional emails. The deadline for merging accounts is April 27th.</p>
<p>MailChimp is choosing to focus on delivering &#8220;personalized transactional&#8221; emails that require more design. For those who want to continue delivering utility type emails, the company recommends <a href="https://aws.amazon.com/ses/" target="_blank">Amazon SES</a>:</p>
<blockquote><p>Transactional emails, like password reminders and the myriad email notifications you get after making changes to online accounts, are dead simple. Utilitarian providers like Amazon SES excel at this. Their innovation is mostly focused on increasing efficiency and reducing costs.</p></blockquote>
<p>Many WordPress developers depend on Mandrill for sending wp_mail() emails in order to ensure delivery and take this load off the server. After MailChimp&#8217;s announcement, many are scrambling to find an alternative.</p>
<p>Amazon SES allows users to send 62,000 messages per month to any recipient, as long as you call it from an Amazon EC2 instance. If you already have one set up, this is one of the best options.</p>
<p><a href="https://hmn.md/" target="_blank">Human Made</a> created an open source <a href="https://github.com/humanmade/aws-ses-wp-mail" target="_blank">plugin</a> that makes it easy to change to Amazon SES. Setting it up is as simple as adding a few constants to your wp-config.php file and then verifying your sending domain for SES.</p>
<p>Of course, Amazon SES isn&#8217;t the only option. Remkus de Vries wrote a post on <a href="https://remkusdevries.com/transactional-email-alternatives-for-mandrillapp/" target="_blank">transactional email alternatives to Mandrill</a>, which includes <a href="https://www.mailgun.com/" target="_blank">MailGun</a> (10,000 emails free every month), <a href="https://sendgrid.com/" target="_blank">SendGrid</a> (up to 12,000 emails  free per month), <a href="https://www.sendinblue.com/" target="_blank">SendIn Blue</a> (up to 9,000 emails/month, 300 emails/day free), and several others. Many of these email services also have corresponding plugins available in the WordPress Plugin Directory.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 26 Feb 2016 21:15:26 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:1;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:73:"WPTavern: Austin WordPress Meetup to Host Charity Hackathon April 8, 2016";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51762";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:82:"http://wptavern.com/austin-wordpress-meetup-to-host-charity-hackathon-april-8-2016";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:4645:"<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/collaboration.jpg" rel="attachment wp-att-51819"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/collaboration.jpg?resize=960%2C479" alt="photo credit: Startup Stock Photos" class="size-full wp-image-51819" /></a>photo credit: <a href="https://stocksnap.io/photo/69TMH4ITIE">Startup Stock Photos</a>
<p>After leading the do_action( ‘wordpress-charity-hackathon’ ); event in <a href="http://wptavern.com/wordpress-cape-town-to-host-charity-hackathon-in-august" target="_blank">2014</a> and <a href="http://wptavern.com/wordpress-cape-town-to-host-2nd-annual-charity-hackathon-in-june" target="_blank">2015</a> in Cape Town, South Africa, Hugh Lashbrooke is bringing the event to Texas with the help of Austin local David Cole. The Austin WordPress Meetup Group will be <a href="http://www.meetup.com/austinwordpress/events/228432694/" target="_blank">hosting the hackathon on April 8th</a>, which will coincide with <a href="https://wooconf.com/" target="_blank">WooConf</a>.</p>
<p>Participants will spend the day building new WordPress-powered websites for 10 local non-profit organizations. At the end of the day, the following charities will have a new (or revamped) online presence with free hosting:</p>
<ul>
<li>North Austin Community Media (aka KXPE-LP)</li>
<li>The Blood Center of Central Texas</li>
<li>Refugee Services of Texas</li>
<li>PelotonU</li>
<li>Circle of Health International</li>
<li>Black Fret</li>
<li>AIDS Services of Austin</li>
<li>Texas PACE Authority</li>
<li>Day With Daddy</li>
<li>Austin Kids First</li>
</ul>
<p>&#8220;What we&#8217;re looking for are 5-6 people to sign up for each build team and with 10 build teams that means we&#8217;re looking for 50-60 people to get involved and help to give back to the non-profits in the Austin area,&#8221; Lashbrooke said. &#8220;It&#8217;s important to note that the build teams are not just developers &#8211; we&#8217;re looking for project managers, social media managers, designers and content creators as well as developers.&#8221;</p>
<p>The hackathon will be held at the tail end of WooConf and Lashbrooke said he hopes to attract a few WooConf attendees.</p>
<p>&#8220;We&#8217;re going to make a more direct push to get WooConf attendees to be a part of the event, but right now the sign-up form is open to absolutely anyone,&#8221; he said.</p>
<p>As part of the WordPress Community team&#8217;s new initiative to <a href="https://make.wordpress.org/community/2016/01/25/full-day-events/" target="_blank">standardize certain specialized full day events</a>, the do_action charity hackathon is now fully backed by the WordPress Foundation.</p>
<p>&#8220;The Foundation will be on hand to offer support (logistically and financially) where necessary, just like with regular meetup events,&#8221; Lashbrooke said. &#8220;I will also be putting together documentation on how we organize this kind of event, which will be published on WordPress.org so that other communities can replicate the event type in their area.&#8221;</p>
<p>When looking for non-profits to include, Lashbrooke said they don&#8217;t only look for organizations without websites. They also look for those that need their online presence improved or otherwise entirely rebuilt.</p>
<p>&#8220;That may mean their website works fine, but it doesn&#8217;t really cater to their needs (accepting donations, selling goods, encouraging volunteers, etc.), so then on the day we can refresh things for them and make it all work in the way that they need it to,&#8221; he said.</p>
<p>Last year the Cape Town participants helped create websites for the <a href="http://www.adultswithautism.org.za/" target="_blank">Academy for Adults with Autism</a>, <a href="http://www.carecareers.co.za/" target="_blank">Care Career Connection</a>, the <a href="http://www.psoriasis.org.za/" target="_blank">South African Psoriasis Association</a>, and several others.</p>
<p>&#8220;It really does feel great &#8211; the non-profit representatives are there on the day as well, and seeing their reaction to the results of the hard work from their teams is always hugely satisfying,&#8221; Lashbrooke said. &#8220;Ultimately, what we&#8217;re doing is empowering non-profits to get on with the work that they do best without their online presence being a hinderance to their work.&#8221;</p>
<p>If you live in Austin or will be attending WooConf and want to be part of the hackathon, you can sign up via the <a href="http://goo.gl/forms/2hjEXfSH0q" target="_blank">volunteer form</a>.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 26 Feb 2016 18:16:52 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:2;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:62:"WPTavern: The WordPress Plugin Directory Is Getting a Makeover";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51789";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:72:"http://wptavern.com/the-wordpress-plugin-directory-is-getting-a-makeover";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2720:"<a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/hammer-nails.jpg" rel="attachment wp-att-51795"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/hammer-nails.jpg?resize=960%2C419" alt="photo credit: Patryk Dziejma" class="size-full wp-image-51795" /></a>photo credit: <a href="https://stocksnap.io/photo/POQ7B631M3">Patryk Dziejma</a>
<p>In February 2015, the <a href="http://wptavern.com/wordpress-theme-directory-launches-new-design" target="_blank">WordPress Theme Directory launched a new design</a>. Konstantin Obenland worked with Samuel “Otto” Wood and the <a href="https://make.wordpress.org/meta/" target="_blank">WordPress meta team</a> to update the design and move the directory off of bbPress. Today Obenland <a href="https://make.wordpress.org/meta/2016/02/25/plugin-directory-v3/" target="_blank">announced</a> that the <a href="https://wordpress.org/plugins/" target="_blank">Plugin Directory</a> will be getting a similar treatment.</p>
<p>Version 3 of the Plugin Directory will focus heavily on improving the search interface, including prioritizing translated plugins for international users. Another major goal of the redesign is to streamline the plugin submission and review process. The new directory will be powered by WordPress, instead of bbPress, which will make it easier for plugin developers and reviewers to manage plugins, tags/categories, and committers.</p>
<p>According to the <a href="https://make.wordpress.org/meta/plugin-directory-version-3/" target="_blank">project overview</a>, plugins will be saved in a custom post type, offering reviewers a more efficient workflow that makes use of post statuses with capability controlled permissions. This will also make it possible to run automated checks on plugins, which should reduce the number of <a href="https://make.wordpress.org/plugins/2016/02/03/plugin-review-inconsistencies/#comment-42561" target="_blank">inconsistencies in the review process</a>.</p>
<p>The meta team plans to hit milestones every two weeks in order to ship version 3 by June 26, 2016. Obenland is aiming for getting a minimal viable product off the ground by March 1st, which would includes the plugin CPT, readme.txt parsing, and a basic display on the frontend. A full overview of the project and the tickets that will need to be addressed is available on the <a href="https://make.wordpress.org/meta/plugin-directory-version-3/" target="_blank">make.wordpress.org/meta P2</a>. New contributors are welcome to jump in on <a href="https://meta.trac.wordpress.org/query?status=!closed&component=Plugin+Directory" target="_blank">Meta Trac</a> and in the #meta Slack channel.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 25 Feb 2016 22:41:48 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:3;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:68:"WPTavern: WordPress 4.5 to Introduce Native Support for a Theme Logo";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51767";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:78:"http://wptavern.com/wordpress-4-5-to-introduce-native-support-for-a-theme-logo";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:4944:"<p>In October 2014, <a href="http://wptavern.com/jetpack-3-2-released-introduces-new-site-logo-feature-for-theme-developers" target="_blank">Jetpack 3.2 introduced a new site logo feature</a> for theme developers. As Jetpack is widely used, it provided a way for theme developers to easily build in logo support, thereby increasing data portability across themes.</p>
<p>After discussion in yesterday&#8217;s core development meeting, <a href="https://make.wordpress.org/core/2016/02/24/theme-logo-support/" target="_blank">WordPress 4.5 is now set to introduce theme support for a site logo</a> using code that was ported over from Jetpack&#8217;s implementation. Themes will be able to declare support via: <code>add_theme_support( 'site-logo', size )</code>, which will add the site logo upload to the customizer.</p>
<a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/site-logo.png" rel="attachment wp-att-51779"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/site-logo.png?resize=1025%2C748" alt="Image credit: Ryan Boren" class="size-full wp-image-51779" /></a>Image credit: <a href="https://make.wordpress.org/flow/2016/02/19/customize-site-logo-and-icon-33755-5-diff-iphone-6/">Ryan Boren</a>
<p>According to release lead Mike Schroder, WordPress 4.5 will ship with a new version of <a href="https://wordpress.org/themes/twentysixteen/" target="_blank">Twenty Sixteen</a> that will support a site logo as an example implementation for theme developers.</p>
<h3>Adding a Site Logo was Not Intuitive for Users During Testing</h3>
<p>In the corresponding <a href="https://core.trac.wordpress.org/ticket/33755" target="_blank">ticket</a>, a few WordPress contributors were concerned about users experiencing confusion between the &#8220;Site Icon&#8221; and &#8220;Site Logo&#8221; features. Tammie Lister conducted <a href="https://make.wordpress.org/flow/2016/02/20/site-logo-and-icon-user-testing/" target="_blank">two users tests</a>, which she posted on the make.wordpress.org/flow blog.</p>
<p>The first user landed on Appearance > Header and said, &#8220;I&#8217;m not really sure if this is the logo where I should be adding this.&#8221; She goes back to the admin, returns again to the header setting, and then finally lands on the customizer. She mistakenly added a site icon thinking it was the logo. Eventually, she found the correct setting and added the logo.</p>
<p>The second tester first landed on the Tools menu and then navigated to Appearance, got lost in the theme browser, and then landed on Customize. She thought she was on the wrong screen and went back. She navigated to Settings, Users, and several other screens in the process of trying to find the right place to upload the logo. Eventually she found it with the explicit instructions included in the testing round for those who are having trouble.</p>
<p>Both test users struggled to find this feature. Based on these tests, it does not appear that adding a site logo is very intuitive for users who are not working in WordPress every day. Watching the test users struggle through the admin in search of this setting is rather painful.</p>
<p>&#8220;Discoverability of the feature isn&#8217;t great,&#8221; Lister <a href="https://core.trac.wordpress.org/ticket/33755#comment:77" target="_blank">reported</a> when summarizing the results of her testing. &#8220;Perhaps this is ok as a theme feature. Perhaps we need to ensure publicity of this feature and documentation. Once people find it and use it the actual process makes sense.&#8221;</p>
<p>Two Jetpack support personnel joined the conversation to report that the site logo feature has been well tested while used in the plugin and that they receive very few questions about it.</p>
<p>&#8220;I can&#8217;t recall a single case where a user was confused about how to use the Site Logo, nor a single instance where a user confused it with the Site Icon,&#8221; Kathryn Presner said.</p>
<p>Several contributors involved in the conversation commented that the feature seemed rushed. Given that nearly every modern website has a logo, this feature is one that is likely to be widely used with theme support. Theme authors will be the ones to add support for a site logo and field questions about how to use it. Based on the user tests, however, a brand new WordPress user with a vanilla site running Twenty Sixteen may be in for a bit of a hunt when trying to upload a logo.</p>
<p>Schroder pulled the trigger yesterday to include the feature in the upcoming release and it is now available in the first beta <a href="https://wordpress.org/news/2016/02/wordpress-4-5-beta-1/" target="_blank">released last night</a>. If you want to help test, the easiest way is to use the <a href="https://wordpress.org/plugins/wordpress-beta-tester/" target="_blank">WordPress Beta Tester</a> plugin and select “bleeding edge nightlies.&#8221;</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 25 Feb 2016 18:11:11 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:4;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:93:"WPTavern: Automattic Adds AMP Support to WordPress.com, Releases Plugin for Self-Hosted Sites";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51722";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:102:"http://wptavern.com/automattic-adds-amp-support-to-wordpress-com-releases-plugin-for-self-hosted-sites";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:6300:"<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/amp-wpcom-screenshots2.png" rel="attachment wp-att-51747"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/amp-wpcom-screenshots2.png?resize=1025%2C372" alt="amp-wpcom-screenshots2" class="aligncenter size-full wp-image-51747" /></a></p>
<p>Today WordPress.com <a href="https://en.blog.wordpress.com/2016/02/24/amp-for-wordpress-dot-com/" target="_blank">announced</a> support for <a href="https://www.ampproject.org/" target="_blank">Accelerated Mobile Pages</a> (AMP), Google&#8217;s open source project to improve the experience of the mobile web for publishers. When visitors arrive to a WordPress.com site via a mobile search, posts will load faster than ever before.</p>
<p>Each post is dynamically generated according to the AMP spec, with /amp/ added to the end of the URL for the mobile version. They&#8217;re also cached in Google&#8217;s cloud infrastructure to reduce loading time. The performance gains are staggering. In early tests, Pinterest&#8217;s engineering team found that <strong>&#8220;<a href="https://engineering.pinterest.com/blog/building-faster-mobile-web-experience-amp" target="_blank">AMP pages load four times faster and use eight times less data than traditional mobile-optimized pages</a>.&#8221;</strong></p>
<p>What makes AMP pages load so quickly? Google has a <a href="https://www.ampproject.org/docs/get_started/technical_overview.html" target="_blank">strict set of optimizations</a> that are employed to improve mobile loading:</p>
<ul>
<li>Allow only asynchronous scripts</li>
<li>Size all resources statically</li>
<li>Don’t let extension mechanisms block rendering</li>
<li>Keep all third-party JavaScript out of the critical path</li>
<li>All CSS must be inline and size-bound</li>
<li>Font triggering must be efficient</li>
<li>Minimize style recalculations</li>
<li>Only run GPU-accelerated animations</li>
<li>Prioritize resource loading</li>
<li>Load pages in an instant</li>
</ul>
<p>To see just how fast AMP is, check out the Google search demo at <a href="https://googleblog.blogspot.com/2015/10/introducing-accelerated-mobile-pages.html" target="_blank">g.co/amp</a>.</p>
<p>Automattic also released a <a href="https://wordpress.org/plugins/amp/" target="_blank">plugin</a> that allows self-hosted WordPress users to take advantage of the mobile performance improvements offered by AMP. The plugin has been tested since October and is currently active on 8,000 installs. For most users, it&#8217;s as easy as installing the plugin and activating it. The default styles are fairly generic but developers can refer to the <a href="https://github.com/Automattic/amp-wp/blob/master/readme.md" target="_blank">documentation on GitHub</a> to further customize AMP styles.</p>
<p>The Jetpack team is working on getting its publishing-related modules ready for AMP compatibility. In order to take advantage of AMP performance increases, users have to compromise on JS-powered features like Sharing Buttons and Likes.</p>
<p>&#8220;It’s definitely something on our roadmap, and we’re working on the details and timeline at the moment,&#8221; Jetpack team lead Sam Hotchkiss told the Tavern.</p>
<p>According to <a href="http://www.niemanlab.org/2016/02/diving-all-in-or-dipping-a-toe-how-publishers-are-approaching-googles-accelerated-mobile-pages-initiative/" target="_blank">NiemanLab&#8217;s survey of newsrooms</a>, publishers that are not running on WordPress are struggling to get on board with AMP, due to the fact that it requires developer resources to implement. This is especially difficult for those that impose JavaScript-based paywalls, as AMP heavily restricts JavaScript.</p>
<p>AMP allows for paywalls, subscription content, and ads, but for many publishers these will have to be rebuilt to be distributed according to the AMP specifications. At this time, AMP <a href="https://github.com/ampproject/amphtml/blob/325878c6bde7a4bd40d67e8c81b9e599af1039d7/ads/integration-guide.md" target="_blank">does not support “interstitials,”</a> the pop-up ads that obscure content and annoy readers.</p>
<p>Publishers can opt not to support AMP, but the kicker is that Google may show preference to results that are configured to deliver AMP-powerd posts, simply by virtue of the fact that it already factors page speed into results. The <a href="https://googleblog.blogspot.com/2015/10/introducing-accelerated-mobile-pages.html" target="_blank">AMP demo</a> shows a carousel of AMP-powered posts under Top Stories, but it&#8217;s not yet clear whether this will be the actual implementation.</p>
<h3>AMP is a Big Win for the Open Web</h3>
<p>Google is firing back at <a href="https://instantarticles.fb.com/" target="_blank">Facebook’s Instant Articles</a> with the official launch of AMP today. Facebook&#8217;s attempt to speed up mobile viewing is platform-specific and only available within its app. AMP, on the other hand, works anywhere online and is controlled and customized by the publisher.</p>
<p>In October 2015, WordPress.com was one of the first publishers to partner with Google on this initiative to speed up the mobile web. Paul Maiorana, VP of Platform Services at Automattic, <a href="https://vip.wordpress.com/2015/10/07/mobile-web/" target="_blank">announced the company&#8217;s involvement in the project on the VIP blog</a>:</p>
<blockquote><p>We believe that open source is one of the most powerful ideas of our generation. We strongly and actively support a free, open internet. We’re very happy to support an open source initiative like AMP, which brings publishers and technology companies together to make a better mobile experience for everyone.</p></blockquote>
<p>The mobile web is currently a zombie wasteland of bloated, sluggish pages &#8211; many sites are unbearable to browse and users quickly abandon slow-loading pages. The AMP project helps publishers deliver a leaner version of posts. It makes mobile browsing faster for everyone, not just those using a few select apps. As such, it is a victory for the open web.</p>
<p>For more background on the project with comments from WordPress.com&#8217;s Paul Maiorana, check out video below:</p>
<div class="embed-wrap"></div>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 24 Feb 2016 22:27:35 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:5;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:42:"Matt: Ten Thousand Hours with Reid Hoffman";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=46223";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:59:"https://ma.tt/2016/02/ten-thousand-hours-with-reid-hoffman/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:287:"<p><a href="http://casnocha.com/">Ben Casnocha</a> is an interesting and innovative character in his own right, and <a href="http://casnocha.com/reid-hoffman-lessons">it&#8217;s worth reading his essay slash short book on the years he spent as the right hand man of Reid Hoffman</a>.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 24 Feb 2016 16:17:44 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:6;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:62:"WPTavern: WordCamp Miami Wapuuno Cards Now Available on GitHub";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51699";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:72:"http://wptavern.com/wordcamp-miami-wapuuno-cards-now-available-on-github";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:1942:"<p>One of the challenges of organizing a WordCamp is coming up with general swag for the event that will delight attendees, as opposed to filling swag bags with cheap plastic junk. Organizers are also tasked with arranging a gift for speakers. WordCamp Miami, which will be entering its ninth year running in 2017, is well known for creating fun collectibles for attendees and speakers. Last year the team gave <a href="https://twitter.com/dimensionmedia/status/702185356330930176" target="_blank">“WordPress developer” cards</a> as speaker gifts.</p>
<p>This year organizers created a deck of Wapuu Uno cards, dubbed &#8220;Wapuuno,&#8221; as a gift for speakers. Each card features a different wapuu, most of which were designed for past WordCamps in various locations around the world. Organizer David Bisset created the deck based on open source Wapuus that are publicly available.</p>
<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/wapuuno-cards.png" rel="attachment wp-att-51701"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/wapuuno-cards.png?resize=1025%2C915" alt="wapuuno-cards" class="aligncenter size-full wp-image-51701" /></a></p>
<p>I asked Bisset what he would recommend to other WordCamp organizers who are stumped about what to get speakers. &#8220;I don’t think speaker gifts need to be anything meaningful,&#8221; he said. &#8220;Miami does these out of fun, but organizers shouldn’t be pressured to do these things. If they are stumped, sometimes a gift is simply a nice coffee or trinket.&#8221;</p>
<p>The <a href="https://github.com/dimensionmedia/Wapuuno" target="_blank">Wapuuno cards</a> are now available on GitHub for anyone to download and print. Bisset joked that WordCamp Miami organizers are looking into creating Candy Land style Wapuu cards in 2017 but is hoping that other WordCamp organizers will beat them to it.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 24 Feb 2016 00:03:05 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:7;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:63:"WPTavern: 10up Open Sources ElasticPress Plugin for WooCommerce";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51677";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:73:"http://wptavern.com/10up-open-sources-elasticpress-plugin-for-woocommerce";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:6465:"<p><a href="https://www.woothemes.com/woocommerce/" target="_blank">WooCommerce</a> is currently the most popular way to add a store to WordPress. Its usage is on the rise and seems to be growing in tandem with global WordPress usage. Wappalyzer estimates a <a href="https://wappalyzer.com/categories/ecommerce" target="_blank">31% marketshare</a> in the e-commerce category and <a href="http://builtwith.com/ecommerce/" target="_blank">BuiltWith has WooCommerce at roughly 29%</a> among other shopping cart technologies. Either way you slice it, WooCommerce accounts for a big piece of the pie.</p>
<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/woocommerce-marketshare.png" rel="attachment wp-att-51688"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/woocommerce-marketshare.png?resize=1025%2C618" alt="woocommerce-marketshare" class="aligncenter size-full wp-image-51688" /></a></p>
<p>Store managers are attracted to WooCommerce because of its ease of use and its ecosystem that offers hundreds of free and commercial extensions. The reason many stores are still built on Magento, an open source shopping cart with a more complicated store management interface, is because it was built to handle massive stores with thousands of products and complex searches. WooCommerce is rapidly becoming a more viable option for these types of stores, with continual <a href="https://www.woothemes.com/2016/01/woocommerce-25-dashing-dolphin/" target="_blank">performance improvements</a> and the new open source <a href="http://10up.com/blog/2016/elasticpress-woocommerce-plugin/" target="_blank">ElasticPress WooCommerce</a> extension from <a href="http://10up.com/" target="_blank">10up</a>.</p>
<p>In 2014 the engineering team at 10up created <a href="https://wordpress.org/plugins/elasticpress/" target="_blank">ElasticPress</a> to improve WordPress search, allow for complex search filters, and allow for cross-blog search within multisite (a feature missing from existing ElasticSearch plugins at the time).</p>
<p>Taylor Lovett, 10up&#8217;s Director of Web Engineering, said he was surprised by the amount of feedback they received on the project.</p>
<p>&#8220;The plugin grew from just search to improving WordPress performance by routing slow queries through Elasticsearch,&#8221; Lovett said. &#8220;As such, we continued to iterate on the project, supporting as many WP_Query parameters as possible and making things as developer friendly as possible.&#8221;</p>
<p>During that time Lovett was traveling to WordCamps around the world talking about the power of ElasticPress. He met other developers who asked what it would take to support WooCommerce queries.</p>
<p>&#8220;ElasticPress has a very powerful API that allows it to route almost all WordPress functionality through Elasticsearch instead of MySQL,&#8221; Lovett said. &#8220;However, in order to make the plugin really work for WooCommerce, we needed a &#8216;connector&#8217; of sorts. The connector mostly enables Elasticsearch integration in the admin, adds support for indexing ALL post statuses and public post types, and passes appropriate GET parameters to WP_Query in ElasticPress proper formats. ElasticPress tries to support all of WP_Query functionality but there are some holes that the connector needed to fill.</p>
<p>&#8220;I knew that WooCommerce sites could suffer from performance problems given the complex product/order queries that they run,&#8221; he said. &#8220;As such, we built ElasticPress WooCommerce to solve those problems.&#8221;</p>
<p>After testing the plugin locally on a store with about 10,000 products and 20,000 orders, 10up found that <strong>&#8220;ElasticPress WooCommerce can easily turn database queries that take 3-4 seconds into Elasticsearch queries that take 30 milliseconds.&#8221;</strong> According to Lovett, the tests included about 20 WooCommerce extensions and the database queries were timed using the Debug Bar, Debug Bar Extender, and Debug Bar ElasticPress.</p>
<p>ElasticPress WooCommerce provides roughly a 100% data retrieval performance improvement when it comes to filtering products on both the frontend and in the admin. This helps stores render pages faster to capture potential customers while they&#8217;re in the buying mood.</p>
<h3>Using ElasticPress WooCommerce for Performance Increases with Other Extensions</h3>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/elasticpress-woocommerce.png" rel="attachment wp-att-51691"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/elasticpress-woocommerce.png?resize=1025%2C439" alt="elasticpress-woocommerce" class="aligncenter size-full wp-image-51691" /></a></p>
<p><a href="https://wordpress.org/plugins/elasticpress-woocommerce/" target="_blank">ElasticPress WooCommerce</a> requires ElasticPress 1.8+ and PHP 5.2.4+. Once those are in place, it is relatively plug-and-play. Lovett said that the only caveat is that it is not guaranteed to support the hundreds of WooCommerce extensions completely. If an extension uses WP_Query in a way that&#8217;s compatible with ElasticPress then it should automatically take advantage of the performance increases.</p>
<p>&#8220;We try to support as much extension functionality as we can but there is just too much to tackle,&#8221; he said. &#8220;The way those extensions use WP_Query varies. We can’t predict how every extension interacts with WP_Query and don’t have time to test every single one.</p>
<p>&#8220;Some extensions have no bearing on ElasticPress WooCommerce,&#8221; Lovett said. &#8220;For example, a different payment gateway. Extensions that involve showing/filtering products and orders should test their extensions with the plugin and refer to the ElasticPress documentation to make sure they are only using supported WP_Query parameters.&#8221;</p>
<p>10up is looking for more developers to test and collaborate on the project, which is hosted on both <a href="https://github.com/10up/elasticpress-woocommerce" target="_blank">GitHub</a> and <a href="https://wordpress.org/plugins/elasticpress-woocommerce/" target="_blank">WordPress.org</a>. The company plans to improve the plugin based on experience with enterprise WooCommerce customers. If you are looking to scale WooCommerce or are currently managing a sluggish store, ElasticPress WooCommerce is one option that you may want to test.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 23 Feb 2016 20:51:58 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:8;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:65:"WPTavern: WordPress Tops Alignable’s Small Business Trust Index";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51635";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:72:"http://wptavern.com/wordpress-tops-alignables-small-business-trust-index";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:4128:"<p>In a <a href="https://www.alignable.com/small-business-insights/introducing-alignables-smb-trust-index" target="_blank">SMB trust index survey</a> conducted by Alignable in the fourth quarter of 2015, WordPress ranked as the most trusted of 25 nationally recognized brands used by small business owners. The results were ranked using the (<a href="http://www.netpromotersystem.com/about/measuring-your-net-promoter-score.aspx" target="_blank">Net Promoter System</a>), a trademarked customer loyalty metric that measures promoters against detractors to produce a net trustworthiness score.</p>
<p>The survey, which was <a href="http://www.bizjournals.com/sanfrancisco/blog/techflash/2016/02/alignable-survey-smb-trust-q4-2015-yelp-wordpress.html" target="_blank">originally reported by the San Francisco Business Times</a>, was roundly disregarded in the WordPress community due to the misuse of the word &#8216;company&#8217; in the Times&#8217; writeup:</p>
<blockquote><p>For small business owners, WordPress is a well-trusted company, Yelp is a brand in trouble, and Facebook is on a downward path.</p></blockquote>
<p>Additionally, the wording on the <a href="https://s3.amazonaws.com/alignable/content/Alignable-SMB-Trust-Index-Q4-2015.pdf" target="_blank">ranking graphic</a> seemed to trivialize the results: <em>&#8220;WordPress proves &#8216;free&#8217; doesn&#8217;t always mean &#8216;junk.'&#8221;</em></p>
<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/wordpress-nps-results.png" rel="attachment wp-att-51664"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/wordpress-nps-results.png?resize=1025%2C729" alt="wordpress-nps-results" class="aligncenter size-full wp-image-51664" /></a></p>
<p>Despite the odd presentation, the results are worth examining, as Alignable surveyed more than 6,000 small business owners across 7,000 communities in North America. WordPress received an NPS of 73, significantly higher than other brands known for website creation: Shopify (29), Godaddy (26), Squarespace (11), Wix (-7), Weebly (-13), and Web.com (-61).</p>
<p>The footnote on the report explains the relative position changes which are shown on the rankings graphic for brands that were included in the previous quarter&#8217;s survey:</p>
<blockquote><p>Data represents running, cumulative report of SMB sentiment of vendors and providers from more than 6,000 ratings. Relative position changes from this quarter to the prior quarter were generated from the 25% net new ratings added to the database in the quarter. Alignable members rated these brands on a sliding scale from 0-10. NPS values calculated by subtracting percentage of detractors (brands rated 0-6) from percentage of promoters (brands rated 9-10).</p></blockquote>
<p>Godaddy fell one point in positioning and Wix and Weebly fell 4 and 8 points respectively. WordPress is new to Alignable&#8217;s SMB index and should have relative position notes included in next quarter&#8217;s survey.</p>
<p>Although the footnote specifies that the index rates brands, the 25 that are included are clearly companies and products. Any conclusions drawn from rating the general WordPress brand would be somewhat nebulous, given that it&#8217;s not clear if business owners are rating their experiences with the WordPress.com service or the self-hosted software. With the introduction of <a href="http://wptavern.com/early-reviews-show-applications-like-calypso-are-the-future-of-wordpress" target="_blank">Calypso</a>, the gap between the two publishing experiences continues to grow.</p>
<p>Nevertheless, most of the brands included are also representative of several different products. The scores are more of a general indication of the trustworthiness of the brand name, although creators of the Net Promoter System claim that a high NPS can point toward long-term profitable growth. If you&#8217;re in the business of building websites or applications for clients, it&#8217;s good to know that the trustworthiness of the WordPress brand is ranking high among industry competitors.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 22 Feb 2016 19:53:19 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:9;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:112:"WPTavern: Varying Vagrant Vagrants 1.3.0 Released with Support for MailCatcher and More Virtualization Providers";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51643";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:122:"http://wptavern.com/varying-vagrant-vagrants-1-3-0-released-with-support-for-mailcatcher-and-more-virtualization-providers";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2774:"<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/vvv.png" rel="attachment wp-att-51659"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/vvv.png?resize=1025%2C473" alt="vvv" class="aligncenter size-full wp-image-51659" /></a></p>
<p>Over the weekend, Jeremy Felt released <a href="https://varyingvagrantvagrants.org/2016/02/21/varying-vagrant-vagrants-1-3-0/" target="_blank">Varying Vagrant Vagrants 1.3.0</a>. Although VVV uses <a href="https://www.virtualbox.org/" target="_blank">VirtualBox</a> as its default virtualization provider, this release adds support for Parallels, VMWare Fusion, VMWare Workstation, and Hyper-V in the default Vagrantfile.</p>
<p>Version 1.3.0 also adds <a href="http://mailcatcher.me/" target="_blank">MailCatcher</a> to the default provisioning. When working in a development environment, you generally don&#8217;t want want to deliver emails from the test site. MailCatcher collects any mail that is sent out and stores it for display. It&#8217;s available in the browser at vvv.dev:1080 in case you need to troubleshoot WordPress core and/or plugins.</p>
<p>Felt, the project&#8217;s current maintainer, said that he is aiming to push out more incremental releases every three months and hopes to get more developers using the <code>develop</code> branch on GitHub.</p>
<p>&#8220;A tough thing about marking version numbers on a project like VVV is that all of the various versions of included packages change frequently,&#8221; Felt said. &#8220;We need to do a better job of making it easier to maintain existing packages.&#8221;</p>
<p>Felt is currently <a href="https://github.com/Varying-Vagrant-Vagrants/VVV/issues/583" target="_blank">soliciting feedback on changing the TLD for test sites</a> in the next version, as Google is attempting to <a href="https://gtldresult.icann.org/application-result/applicationstatus/applicationdetails/1339" target="_blank">gain control of the .dev TLD</a>. If the company were to open it up for public registration, it could cause confusion with test sites. After a brief discussion with VVV users, Felt has narrowed the considerations to .localhost, .test, and .local.</p>
<p>In addition to a new TLD for test sites, Felt hopes to update packages on <code>vagrant provision</code> in a future release, which should help keep PHP, Nginx, and MySQL updated. He also wants to make it easy to remove the default configurations for WordPress local, trunk, and dev environments that are offered with VVV out of the box.</p>
<p>For more details on the 23 features and bug fixes in 1.3.0, check out the official <a href="https://github.com/Varying-Vagrant-Vagrants/VVV/blob/1.3.0/CHANGELOG.md" target="_blank">changelog</a>.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 22 Feb 2016 16:02:23 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:10;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:35:"Matt: New Yorker on Zen Master Poet";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=46218";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:52:"https://ma.tt/2016/02/new-yorker-on-zen-master-poet/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:171:"<p>It&#8217;s never a bad time to <a href="http://www.newyorker.com/magazine/2008/10/20/zen-master">read and learn about the life, work, and poetry of Gary Snyder</a>.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 22 Feb 2016 15:50:24 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:11;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:26:"Matt: Jazzy Claire de Lune";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=46164";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:43:"https://ma.tt/2016/02/jazzy-claire-de-lune/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:939:"<p><span class="embed-youtube"></span></p>
<p>I love this version from <a href="http://www.kamasiwashington.com/">Kamasi Washington</a> of Claude Debussy&#8217;s Clair de Lune, or &#8220;light of the moon.&#8221; Here&#8217;s the <a href="https://en.wikipedia.org/wiki/Paul_Verlaine">Paul Verlaine</a> poem that inspired the original composition:</p>
<blockquote><p>Your soul is a chosen landscape<br />
Where charming masqueraders and bergamaskers go<br />
Playing the lute and dancing and almost<br />
Sad beneath their fanciful disguises.</p>
<p>All sing in a minor key<br />
Of victorious love and the opportune life,<br />
They do not seem to believe in their happiness<br />
And their song mingles with the moonlight,</p>
<p>With the still moonlight, sad and beautiful,<br />
That sets the birds dreaming in the trees<br />
And the fountains sobbing in ecstasy,<br />
The tall slender fountains among marble statues.</p></blockquote>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Sun, 21 Feb 2016 20:07:46 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:12;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:58:"Post Status: All things HTTP/2 and HTTPS — Draft podcast";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:31:"https://poststatus.com/?p=21371";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:64:"https://poststatus.com/all-things-http2-and-https-draft-podcast/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2417:"<p>Welcome to the Post Status <a href="https://poststatus.com/category/draft">Draft podcast</a>, which you can find <a href="https://itunes.apple.com/us/podcast/post-status-draft-wordpress/id976403008">on iTunes</a>, <a href="http://www.stitcher.com/podcast/krogsgard/post-status-draft-wordpress-podcast">Stitcher</a>, and <a href="http://simplecast.fm/podcasts/1061/rss">via RSS</a> for your favorite podcatcher. Post Status Draft is hosted by Joe Hoyle &#8212; the CTO of Human Made &#8212; and Brian Krogsgard.</p>
<p><span>HTTPS and HTTP/2 are somewhat intertwined, and a lot has been going on lately in this realm. Google has made a big push to encourage the use of SSL for websites &#8212; including making it a search ranking factor &#8212; and LetsEncrypt and other services are offering new ways to deliver free SSL certificates, securely. And HTTPS is required for HTTP/2, which is making a big splash as well, quickly outpacing SPDY. Today, we’ll talk about what these terms are, and what it means for the web and for WordPress.</span></p>
<!--[if lt IE 9]><script>document.createElement('audio');</script><![endif]-->
<a href="https://audio.simplecast.com/27370.mp3">https://audio.simplecast.com/27370.mp3</a>
<p><a href="http://audio.simplecast.com/27370.mp3">Direct Download</a></p>
<h3>Links</h3>
<ul>
<li><a href="https://letsencrypt.org/">Let&#8217;s Encrypt</a></li>
<li><a href="http://wordpress.tv/2015/12/09/zack-tollman-and-aaron-jorbin-the-future-stack-running-wordpress-with-tomorrows-technologies/">The Future Stack: Running WordPress with Tomorrow&#8217;s Technologies</a></li>
<li><a href="http://oauth.net/">OAuth</a></li>
<li><a href="https://http2.github.io/faq/">HTTP/2 FAQs</a></li>
<li><a href="https://make.wordpress.org/core/2015/09/08/wordpress-and-http2/">WordPress and HTTP/2</a></li>
<li><a href="https://en.wikipedia.org/wiki/HTTP/2#Software_and_services_supporting_HTTP.2F2">Software and services supporting HTTP/2</a></li>
<li><a href="http://blog.chromium.org/2016/02/transitioning-from-spdy-to-http2.html">Transitioning from SPDY to HTTP/2</a></li>
<li><a href="https://wordpress.tv/2015/07/29/zack-tollman-http-2-and-you/">HTTP/2 and You</a></li>
<li><a href="https://blog.cloudflare.com/introducing-http2/">Introducing HTTP/2</a></li>
<li><a href="http://www.buzzfeed.com/nickrkm/youre-listening-to-delilah#.wa82qoMyR">You&#8217;re Listening to Delilah</a></li>
</ul>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Sat, 20 Feb 2016 18:20:49 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:14:"Katie Richards";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:13;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:81:"WPTavern: hack.summit() Event for Developers Will Be Live-Streamed February 22-24";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51615";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:89:"http://wptavern.com/hack-summit-event-for-developers-will-be-live-streamed-february-22-24";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2570:"<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/hack.summit.png" rel="attachment wp-att-51623"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/hack.summit.png?resize=1025%2C375" alt="hack.summit" class="aligncenter size-full wp-image-51623" /></a></p>
<p><a href="https://hacksummit.org/" target="_blank">Hack.summit()</a> is a unique event for developers that is set to be live-streamed February 22-24, 2016. It is the world&#8217;s largest virtual conference ever assembled, with 64,000 developers registered for last year&#8217;s event. hack.summit() will feature an impressive array of programming language creators and open source contributors and all ticket sales/donations go to support programming non-profits such as Code.org, Code for America, CoderDojo, and Girls Who Code.</p>
<p>The event focuses on three primary objectives:</p>
<ul>
<li>To educate programmers of all languages and skill sets</li>
<li>To raise money for coding nonprofits</li>
<li>To encourage mentorship among software developers</li>
</ul>
<p>In lieu of traditional ticket sales, hack.summit() attendees are asked to donate to one of the selected coding non-profits. Those who are not financially able to donate can get a free ticket by sharing the event on Twitter or Facebook. Attendees are provided with a unique ticket number after registering, which includes access to the live conference.</p>
<p>The event heavily promotes mentoring by asking attendees to sign a <a href="https://hackpledge.org/" target="_blank">hack pledge</a> to help mentor the next generation of developers with a minimum of one hour of coding help. The hack pledge video below features stories from programmers who have struggled to master software craftsmanship and those who benefited greatly from mentors:</p>
<div class="embed-wrap"></div>
<p>hack.summit() will also host the largest <a href="https://www.koding.com/Hackathon" target="_blank">virtual hackathon</a> in the world. Participants will create a web app using any publicly available API that falls within three general categeries: data visualization, productivity, or gaming. Last year&#8217;s event drew 60,000 coders from more than 900 cities. Participants will compete to win from a $150,000 prize pool.</p>
<p>If you&#8217;re looking for an interesting non-WordPress event to attend this year, <a href="https://hacksummit.org/" target="_blank">hack.summit()</a> is one of the most accessible with high quality speakers that will expand your technical horizons.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 19 Feb 2016 20:21:26 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:14;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:19:"Matt: WordPress NPS";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=46156";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:36:"https://ma.tt/2016/02/wordpress-nps/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:753:"<blockquote><p>For small business owners, WordPress is a well-trusted company, Yelp is a brand in trouble, and Facebook is on a downward path. Those are some of the findings out today from a survey of 6,000 small business owners from the second half of 2015 conducted by Alignable.</p></blockquote>
<p><a href="http://www.bizjournals.com/sanfrancisco/blog/techflash/2016/02/alignable-survey-smb-trust-q4-2015-yelp-wordpress.html">You can see the whole thing here</a>. WordPress came in with a NPS of 73, Shopify at 29, Godaddy at 26, Squarespace at 11, Wix at -7, Weebly at -13, Web.com at -61, and Yelp at -66. <a href="http://www.netpromotersystem.com/about/measuring-your-net-promoter-score.aspx">Here&#8217;s how a Net Promoter Score works</a>.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 19 Feb 2016 19:55:05 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:15;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:69:"WPTavern: WordPress to Launch Experimental WordCamp Incubator Program";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51599";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:79:"http://wptavern.com/wordpress-to-launch-experimental-wordcamp-incubator-program";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2595:"<a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2014/02/wordpress-swag.jpg" rel="attachment wp-att-17801"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2014/02/wordpress-swag.jpg?resize=1024%2C441" alt="photo credit: Huasonic - cc" class="size-full wp-image-17801" /></a>photo credit: <a href="http://www.flickr.com/photos/huasonic/3008912290/">Huasonic</a> &#8211; <a href="http://creativecommons.org/licenses/by-nc/2.0/">cc</a>
<p>During the 2015 State of the Word address, Matt Mullenweg shared a few stats about the growth of WordPress events around the globe. Last year there were 89 WordCamps with 21,000 attendees across 34 countries. A surprising 60% of the 601 WordCamp organizers were doing it for the first time. More people are getting involved in hosting WordPress events but there are many areas of the world that have yet to experience one.</p>
<p>The WordPress community team, which provides support and guidance for WordCamps, will be experimenting with bringing events to new locations in 2016. Ordinarily, WordCamps spring up organically from local WordPress communities with active meetups. The new <a href="https://wordpress.org/news/2016/02/experiment-wordcamp-incubator/" target="_blank">WordPress incubator program</a> will bring a WordCamp to three new cities where meetups are not necessarily as well established.</p>
<p>Jen Mylo outlined the goal of the program in a recent <a href="https://wordpress.org/news/2016/02/experiment-wordcamp-incubator/" target="_blank">post</a> on the WordPress news blog:</p>
<blockquote><p>The intention of the incubator program is to help spread WordPress to underserved areas through providing more significant organizing support for a first event. In practical terms, this experiment means we’ll be choosing three cities in 2016 where there is not an active WordPress community — but where it seems like there is a lot of potential and where there are some people excited to become organizers — and will help to organize their first WordCamp.</p></blockquote>
<p>The new WordCamps will be designed as one-day, one-track events that connect the local community and inspire them to establish an ongoing presence. Qualifications for applying are rather loose. Those who have always wanted to get WordPress events going in their city but haven&#8217;t had success organizing meetups are encouraged to apply.</p>
<p>Applications will be accepted until February 26, 2016, and cities will be chosen by the end of March. Where do you think the world needs a new WordCamp?</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 19 Feb 2016 18:23:37 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:16;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:87:"WPTavern: Happy Joe to Shut Down Non-Profit Organization in Favor of For-Profit Venture";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51587";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:97:"http://wptavern.com/happy-joe-to-shut-down-non-profit-organization-in-favor-of-for-profit-venture";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3100:"<a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2014/11/VeteransDayFeaturedImage.png" rel="attachment wp-att-33378"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2014/11/VeteransDayFeaturedImage.png?resize=638%2C285" alt="Veterans Day Featured Image" class="size-full wp-image-33378" /></a>photo credit: <a href="https://www.flickr.com/photos/soldiersmediacenter/6343590279/">The U.S. Army</a> &#8211; <a href="http://creativecommons.org/licenses/by/2.0/">cc</a>
<p>Happy Joe founder James Dalman <a href="https://www.happyjoe.org/shutting-down/" target="_blank">announced</a> this week that the non-profit organization will be shutting down. Dalman started the organization to help veterans find employment opportunities in WordPress and other web technologies. He plans to continue with a modified version of the Happy Joe mission set up as a for-profit venture.</p>
<p>After operating for the past two years as a tax-exempt 501(c)(3) organization, Dalman no longer has the desire to continue raising funds. Happy Joe pulled in $80,000 in 2015 through corporate sponsorships and private donations, but Dalman started 2016 with no funds to carry through.</p>
<p>&#8220;The reality is we can’t continue on a zero budget and I can’t continue to work for free,&#8221; he said. &#8220;While it would be simple to say dedicate more time to asking companies and people for funding, it’s not in my heart to do so anymore. I believe in being self-sufficient and not a burden on others.&#8221;</p>
<p>Lack of funding is the primary reason the organization is shutting down, but Dalman also struggled with the perception of non-profits. With organizations like the <a href="http://www.nytimes.com/2016/01/28/us/wounded-warrior-project-spends-lavishly-on-itself-ex-employees-say.html?_r=0" target="_blank">Wounded Warrior Foundation receiving negative press for excessive spending</a>, Dalman said the growing skepticism of non-profits made his job more challenging.</p>
<blockquote><p>There’s no doubt that accountability and transparency is critical and Happy Joe has strived to excel in this. But the wrong assumptions about what a non-profit can do and the skepticism and lack of trust also complicates the mission for teams operating in the non-profit space for the future. Battling these challenges keeps us from doing the work that truly matters.</p></blockquote>
<p>Dalman&#8217;s non-profit post-mortem also cites negative stereotypes about veterans, expectations of rewards or kickbacks for donations, and his own leadership as contributing factors to his decision to shut the organization down.</p>
<p>&#8220;We will now operate as a for-profit venture and will shift our focus from web tech training to building a talent marketplace where veterans can get freelance work and be mentored in growing a business,&#8221; Dalman said.</p>
<p>The new for-profit venture will drop some of the programs that Happy Joe offered previously but will continue to assist veterans in seeking employment and developing entrepreneurial skills.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 18 Feb 2016 22:29:12 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:17;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:60:"WPTavern: GitHub Introduces Issue and Pull Request Templates";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51565";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:70:"http://wptavern.com/github-introduces-issue-and-pull-request-templates";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2547:"<p>Last week GitHub <a href="http://wptavern.com/github-responds-to-letter-from-open-source-project-maintainers" target="_blank">responded to a letter from open source project maintainers</a> with apologies for the lack of communication and lack of attention to feedback regarding issue management. Because contributions are the lifeblood of open source projects, maintainers are requesting additional features for issues and pull requests that would help make contributions more meaningful.</p>
<p>The discussions surrounding the <a href="http://wptavern.com/open-source-project-maintainers-confront-github-with-open-letter-on-issue-management" target="_blank">&#8220;Dear GitHub&#8221; letter</a> challenged the company to start tackling the low-hanging fruit on the list of improvements that would benefit open source projects. Yesterday GitHub <a href="https://github.com/blog/2111-issue-and-pull-request-templates" target="_blank">introduced issue and pull request templates</a> as the first of many promised improvements.</p>
<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/github-issues-templates.png" rel="attachment wp-att-51570"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/github-issues-templates.png?resize=1025%2C622" alt="github-issues-templates" class="aligncenter size-full wp-image-51570" /></a></p>
<p>Issue templates can now be created by adding a file called <a href="https://help.github.com/articles/creating-an-issue-template-for-your-repository/" target="_blank">ISSUE_TEMPLATE.md</a> to the root directory. Project maintainers can use this template to ensure that crucial information, such as expected behavior, reproduction steps, and version tested, is included in the bug report. This is the kind of information that saves time for everyone involved in testing and improving the software.</p>
<p>Pull request templates follow the same file-naming pattern (PULL_REQUEST_TEMPLATE.md). These new templates can be added to either the root directory of the repository or the new .github/ directory. GitHub recommends placing CONTRIBUTING.md, ISSUE_TEMPLATE.md, and PULL_REQUEST_TEMPLATE.md files in the .github/ folder to reduce clutter in the root directory.</p>
<p>GitHub&#8217;s new issue and pull request templates are a positive step toward reaffirming the company&#8217;s commitment to supporting open source projects. Maintainers are still hoping to see a voting system implemented to help declutter the +1&#8217;s from issues queues.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 18 Feb 2016 18:57:36 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:18;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:79:"WPTavern: Critical Security Vulnerability Discovered in Elegant Themes Products";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51546";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:89:"http://wptavern.com/critical-security-vulnerability-discovered-in-elegant-themes-products";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2237:"<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/elegant-themes.jpg" rel="attachment wp-att-51562"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/elegant-themes.jpg?resize=674%2C300" alt="elegant-themes" class="aligncenter size-full wp-image-51562" /></a></p>
<p><a href="http://www.elegantthemes.com/" target="_blank">Elegant Themes</a> emailed its customers last night to inform them of a critical security vulnerability affecting a large segment of its product line.</p>
<blockquote><p>An information disclosure vulnerability was found in the Divi Builder (included in our Divi and Extra themes, as well as our Divi Builder plugin) which resulted in the potential for user privilege escalation. If properly exploited, it could allow registered users, regardless of role, on your WordPress installation to perform a subset of actions within the Divi Builder, including the ability to manipulate posts.
</p></blockquote>
<p>In addition to the Divi Builder, the vulnerability was also found in the Divi, Extra, and Divi 2.3 (legacy) themes and the Boom and Monarch plugins. It was privately disclosed and promptly patched by Elegant Themes with the help of a third-party security vendor. No known exploit attempts have been made.</p>
<p>Updating the themes and plugins will fix the vulnerability but the patches were created only for the most recent versions. Legacy theme customers now have an upgrade path, including a version that doesn&#8217;t add new functionality. Customers who are not ready to update are advised to turn registration off on their sites, as untrusted users increases the possibility of privilege escalation. Elegant Themes also recommends installing its Security Patcher plugin and utilizing the CloudProxy WAF from Sucuri, which has virtually patched the vulnerability.</p>
<p>As of 2015, Elegant Themes has more than 300,000 customers. Given the severity of the vulnerability, the company is also making the updates available for free to all expired accounts via its updater plugin. Customers who have forgotten their login credentials can contact Elegant Themes to have the latest versions of the themes and plugins sent to them.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 18 Feb 2016 16:02:25 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:19;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:78:"WPTavern: WP Pusher 2.1.0 Offers Tighter Integration with GitHub and Bitbucket";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51525";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:88:"http://wptavern.com/wp-pusher-2-1-0-offers-tighter-integration-with-github-and-bitbucket";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:4285:"<p>WP Pusher is on a relentless mission to make it effortless for WordPress developers to connect their plugin and theme repositories hosted on GitHub and Bitbucket. <a href="http://blog.wppusher.com/wp-pusher-2-1-0-has-landed/" target="_blank">Version 2.1.0</a> of the plugin eliminates the requirement to manually create a token with GitHub and introduces 1-click authentication via OAuth. This update makes setting up the plugin on a new site relatively painless.</p>
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">It's going to be a lot easier to setup GitHub with a token in the next version of <a href="https://twitter.com/WP_Pusher">@WP_Pusher</a>! <a href="https://t.co/CK9Dyo0zle">pic.twitter.com/CK9Dyo0zle</a></p>
<p>&mdash; Peter Suhm (@petersuhm) <a href="https://twitter.com/petersuhm/status/695232521462759424">February 4, 2016</a></p></blockquote>
<p></p>
<p>In order to make the on-boarding process easier for new users, Peter Suhm, creator of WP Pusher, had to build a service that uses OAuth to handle authentication.</p>
<p>&#8220;It’s not possible to do OAuth from a WordPress plugin without shipping a secret token together with the code (which you do not want to do),&#8221; Suhm said. &#8220;So we built a small service, on our own server, that handles all the communication with GitHub and Bitbucket. We don’t store anything. Your GitHub and Bitbucket tokens are not stored on our servers.&#8221;</p>
<p>After determining that OAuth would be one of the safest ways to manage this, Suhm reached out to GitHub and they suggested the approach of building a small service to perform authentication. He&#8217;s now exploring different ways he can make both the code and service available to other developers.</p>
<p>&#8220;The whole infrastructure is built using the Laravel PHP framework and their excellent <a href="https://github.com/laravel/socialite" target="_blank">Socialite</a> package,&#8221; Suhm said. &#8220;I&#8217;m thinking about either open sourcing the service (when it&#8217;s been online for a bit) or writing an in-depth tutorial on how to set up a similar thing. I also thought about offering the service to other WordPress plugin authors, since OAuth can be used for so many things, including Twitter, Facebook, Instagram and even WordPress.com authentication.&#8221;</p>
<p>Version 2.1.0 also adds a new Push-to-Deploy checkbox, which removes the requirement of manually setting up a webhook on GitHub or Bitbucket. WP Pusher now sets up the webhook automatically in the background.</p>
<p>&#8220;Setting up automatic updates is something I&#8217;ve gotten many support requests about,&#8221; Suhm said. &#8220;Now, all you have to do is check a checkbox and your plugin or theme will be updated every time you push a change to GitHub.&#8221;</p>
<p>Now that the plugin uses OAuth, it can be even more tightly integrated with GitHub and Bitbucket in future updates.</p>
<p>&#8220;The next big thing I want to work on, which is now possible, is to allow users to select and install a plugin or theme directly from GitHub &#8211; with just one click,&#8221; Suhm said.</p>
<p>The improvements offered in WP Pusher 2.1.0 make it even easier for new users to start deploying WordPress themes and plugins directly from GitHub without all the hassle of manually creating tokens and setting up webhooks. However, users still need a basic knowledge of Git in order to use the product. Suhm continues to offer <a href="http://wptavern.com/wp-pusher-launches-free-git-crash-course-for-wordpress-developers" target="_blank">free Git education for WordPress developers</a> in hopes of expanding his customer base.</p>
<p>&#8220;WordPress devs are definitely starting to get interested in Git, as I had more than 1,000 developers sign up to my video course,&#8221; he said.</p>
<p>WP Pusher is free to use for open source code hosted in public repositories. Since Suhm doesn&#8217;t track his users, he doesn&#8217;t have exact numbers for how many sites are using the plugin. Although he would not disclose how many licenses he has sold, he estimates that approximately 1,000 developers have installed WP Pusher. Suhm&#8217;s customers range from small freelancers to agencies to large universities.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 17 Feb 2016 21:52:56 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:20;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:62:"WPTavern: TGM Plugin Activation Team Releases Custom Generator";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51498";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:72:"http://wptavern.com/tgm-plugin-activation-team-releases-custom-generator";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3104:"<p>The development team behind TGM Plugin Activation <a href="http://tgmpluginactivation.com/2016/02/12/custom-tgmpa-generator/" target="_blank">released its new generator</a> last week. The popular tool is a PHP library that allows WordPress developers to require or recommend plugins for a theme or plugin. It essentially helps walk WordPress users through installation and activation of plugin dependencies in the admin.</p>
<p>Bundling a bunch of plugin-type functionality into a theme is generally discouraged, but authors still need a way to recommend additional extensions. The <a href="https://github.com/TGMPA/TGM-Plugin-Activation" target="_blank">TGMPA</a> library is a solution to this problem and is recommended by Themeforest, CodeCanyon, and the WordPress.org Theme Review Team as an alternative to bundling.</p>
<p>The <a href="http://tgmpluginactivation.com/download/" target="_blank">new generator</a> addresses an issue that theme authors were running up against while using TGMPA and publishing themes to WordPress.org. The Theme Check plugin would often spit out feedback preventing the theme from passing all the checks: <em>“You are only allowed to use add_theme_page(), please remove the call to add_submenu_page(),” or “You are only supposed to use one text-domain.”</em></p>
<p>According to TGMPA contributor Juliette Reinders Folmer&#8217;s, authors reported having performed a search-and-replace that resulted in fatal errors because it would often change some strings that should not have been changed. This process repeated anytime TGMPA needed to be updated.</p>
<p>The Custom TGMPA generator asks the author to input the type of extension where TGMPA is being used, as well as the avenue of distribution. Authors then add the text domain, function prefix, and the theme/plugin name. The generator automatically outputs a download of the latest stable version of TGMPA with the customized strings already in place.</p>
<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/tgmpa-custom-generator.png" rel="attachment wp-att-51507"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/tgmpa-custom-generator.png?resize=1025%2C322" alt="tgmpa-custom-generator" class="aligncenter size-full wp-image-51507" /></a></p>
<p>The Custom TGMPA generator is the result of a <a href="https://github.com/TGMPA/TGM-Plugin-Activation/pull/460" target="_blank">discussion</a> with WordPress.org representatives regarding issues that continually pop up during theme reviews. The generator provided an acceptable solution that doesn&#8217;t require bypassing the Theme Check Plugin. Authors who experience any bugs with the generator can log them with the TGMPA team in the project&#8217;s GitHub <a href="https://github.com/TGMPA/TGM-Plugin-Activation/issues" target="_blank">issues</a> queue. The team is still trucking on the <a href="https://github.com/TGMPA/TGM-Plugin-Activation/issues/394" target="_blank">3.0 milestone</a> which aims to make TGMPA updatable independent of the plugin/theme that ships it.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 17 Feb 2016 19:14:56 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:21;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:72:"WPTavern: GitHub Responds to Letter from Open Source Project Maintainers";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51478";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:82:"http://wptavern.com/github-responds-to-letter-from-open-source-project-maintainers";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3404:"<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/04/github-octocat.jpg" rel="attachment wp-att-42456"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/04/github-octocat.jpg?resize=857%2C400" alt="github-octocat" class="aligncenter size-full wp-image-42456" /></a></p>
<p>Last month a group of open source project maintainers <a href="http://wptavern.com/open-source-project-maintainers-confront-github-with-open-letter-on-issue-management" target="_blank">confronted GitHub with an open letter</a> of complaints regarding issue management. They were frustrated by a lack of communication from GitHub and a lack of features for managing issues. More than 1700 maintainers of open source projects, including several projects related to WordPress, have <a href="https://docs.google.com/spreadsheets/d/1oGsg02jS-PnlIMJ3OlWIOEmhtG-udTwuDz_vsQPBHKs/edit#gid=290603204" target="_blank">signed</a> the letter so far.</p>
<p>GitLab, a competing code hosting service, <a href="http://wptavern.com/gitlab-courts-open-source-project-maintainers-with-response-to-dear-github-letter" target="_blank">responded to the letter</a> almost immediately with a new GitLab issue that outlined every concern mentioned in the original &#8220;Dear GitHub&#8221; letter. The new initiative is focused on &#8220;<a href="https://gitlab.com/gitlab-org/gitlab-ce/issues/8938" target="_blank">making GitLab the best place for big open source projects</a>.&#8221;</p>
<p>GitHub, on the other hand, took roughly a month to reply. The company&#8217;s staff forked the letter and drafted <a href="https://github.com/bkeepers/dear-github/blob/master/README.md" target="_blank">a reply</a> containing an apology and a promise to address their concerns:</p>
<blockquote><p>Dear Open Source Maintainers,</p>
<p>We hear you and we&#8217;re sorry. We&#8217;ve been slow to respond to your letter and slow to respond to your frustrations.</p>
<p>We&#8217;re working hard to fix this. Over the next few weeks we&#8217;ll begin releasing a number of improvements to Issues, many of which will address the specific concerns raised in the letter. But we&#8217;re not going to stop there. We&#8217;ll continue to focus on Issues moving forward by adding new features, responding to feedback, and iterating on the core experience. We&#8217;ve also got a few surprises in store.</p>
<p>Issues haven&#8217;t gotten much attention from GitHub these past few years and that was a mistake, but we&#8217;ve never stopped thinking about or caring about you and your communities. However, we know we haven&#8217;t communicated that. So in addition to improving Issues, we&#8217;re also going to kick off a few initiatives that will help give you more insight into what&#8217;s on our radar. We want to make sharing feedback with GitHub less of a black box experience and we want to hear your ideas and concerns regularly.</p></blockquote>
<p>GitHub closed the letter saying that the company would be in touch next week. Although no concrete changes have been announced, GitHub&#8217;s reply indicates that the company will be improving its communication and features to better serve open source projects and their communities. Hopefully this public exchange is a turning point for code hosting and collaboration services to prioritize features that open source project maintainers need.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 16 Feb 2016 22:46:35 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:22;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:93:"WPTavern: Customizer Responsive Preview and Selective Refresh to be Merged Into WordPress 4.5";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51451";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:103:"http://wptavern.com/customizer-responsive-preview-and-selective-refresh-to-be-merged-into-wordpress-4-5";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3307:"<p>Last week the feature plugin decision deadline closed and WordPress core contributors approved Responsive Preview and Selective Refresh for merge. The merge deadline is Wednesday, February 17, followed by the first beta next week.</p>
<p>Both feature approved for 4.5 extend the customizer to improve live previews. A new version of the <a href="https://wordpress.org/plugins/customize-partial-refresh/" target="_blank">Customize Partial Refresh</a> plugin is now available and ready for testing. This new feature makes previews more instant using JavaScript, as opposed to reloading the entire preview for each setting change. Developers who build customizer settings will be able to use a <strong>postMessage</strong> transport, which is much faster than the default <strong>refresh</strong> transport. The plugin&#8217;s description page includes a video demonstrating the faster previews with an example of adding smilies to the site title.</p>
<div class="embed-wrap"></div>
<p>According to the meeting <a href="https://make.wordpress.org/core/2016/02/11/core-dev-chat-notes-for-feb-10/" target="_blank">summary</a> written by 4.5 release deputy Adam Silverstein, the most important question to answer is whether <a href="https://github.com/xwp/wp-customize-partial-refresh/issues/22" target="_blank">widgets should opt-in for selective refresh by default</a>. Weston Ruter <a href="https://github.com/xwp/wp-customize-partial-refresh/issues/22#issuecomment-182594185" target="_blank">recommended</a> that they require opt-in for widget selective refresh in 4.5 and warn developers that it will be set to default in the next release.</p>
<p>The <a href="https://core.trac.wordpress.org/ticket/31195" target="_blank">new responsive preview feature</a> is part of the <a href="https://wordpress.org/plugins/customizer-ui-experiments/" target="_blank">Customizer UI Experiments</a> plugin. It adds buttons to the customizer controls footer which allow users to preview site responsiveness while making changes. The buttons have icons for desktop, tablet, and phone-sized devices with portrait orientation.</p>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/customize-device-preview.gif" rel="attachment wp-att-51464"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/customize-device-preview.gif?resize=1025%2C537" alt="customize-device-preview" class="aligncenter size-full wp-image-51464" /></a></p>
<p>According to Silverstein&#8217;s <a href="https://make.wordpress.org/core/2016/02/11/core-dev-chat-notes-for-feb-10/" target="_blank">summary</a> of last week&#8217;s meeting, WordPress 4.5 will not ship with WP REST API endpoints as previously planned:</p>
<blockquote><p>The REST API team’s proposal is to merge the four main endpoints when they are ready, and they are not ready for 4.5. As such, no endpoints are targeted for WordPress 4.5.</p></blockquote>
<p>Discussion regarding the future of the REST API and <a href="https://make.wordpress.org/core/2016/02/05/rest-api-meeting-summary-feb-4/#comment-29217" target="_blank">what constitutes an MVP</a> continues on <a href="https://make.wordpress.org/core/tag/rest-api/" target="_blank">make.wordpress.org/core</a> and in the #core-restapi channel on Slack.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 15 Feb 2016 21:30:51 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:23;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:29:"Matt: Solar in Sunshine State";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=46141";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:46:"https://ma.tt/2016/02/solar-in-sunshine-state/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:1104:"<p>One of my favorite movies is <a href="http://www.imdb.com/title/tt0427944/">Thank You for Smoking</a>, the Jason Reitman&#8217;s film that looks at the world through the lens of a tobacco lobbyist. It&#8217;s fiction, though. <a href="https://www.rollingstone.com/politics/news/the-koch-brothers-dirty-war-on-solar-power-20160211">This real-life Rolling Stone look at what is going on with rooftop solar in Florida and the big utilities</a> has quotes that could have easily been in the movie.</p>
<p>Facing an amendment that would open up one of the sunniest states to solar power, the utilities created a competing amendment called &#8220;Rights of Electricity Consumers Regarding Solar Energy Choice,&#8221; which, as you might imagine, is extraordinarily unfriendly to anyone who wants solar panels on their home. Why the confusing title?</p>
<blockquote><p>Bascom insisted there was no intention to mislead. &#8220;It would defy all logic,&#8221; she tells <em>Rolling Stone</em>. &#8220;Why would we confuse ours with one that does not have public support?&#8221;</p></blockquote>
<p>&nbsp;</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 15 Feb 2016 19:35:39 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:24;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:58:"Post Status: WordPress in the Enterprise — Draft podcast";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:31:"https://poststatus.com/?p=21170";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:65:"https://poststatus.com/wordpress-in-the-enterprise-draft-podcast/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:1512:"<p>Welcome to the Post Status <a href="https://poststatus.com/category/draft">Draft podcast</a>, which you can find <a href="https://itunes.apple.com/us/podcast/post-status-draft-wordpress/id976403008">on iTunes</a>, <a href="http://www.stitcher.com/podcast/krogsgard/post-status-draft-wordpress-podcast">Stitcher</a>, and <a href="http://simplecast.fm/podcasts/1061/rss">via RSS</a> for your favorite podcatcher. Post Status Draft is hosted by Joe Hoyle &#8212; the CTO of Human Made &#8212; and Brian Krogsgard.</p>
<p><span>Today, Joe and Brian discuss WordPress in the “enterprise,&#8221; starting with a discussion on what the enterprise even is. We discuss WordPress’s value to the enterprise, and what enterprise level companies are looking for in their technology solutions.</span></p>
<p><span>The conversation turns into conspiracy theories and joking around by the 50 minute mark, so don’t be intimidated by the hour and fifteen minute timestamp.</span></p>
<a href="https://audio.simplecast.com/26691.mp3">https://audio.simplecast.com/26691.mp3</a>
<p><a href="http://audio.simplecast.com/26691.mp3">Direct Download</a></p>
<h3>Links</h3>
<ul>
<li><a href="http://www.niemanlab.org/2015/05/quartz-is-an-api-the-path-ahead-for-the-business-site-thats-reshaping-digital-news/">Quartz is an API</a></li>
<li><a href="http://www.bloomberg.com/graphics/2015-paul-ford-what-is-code/">What is Code?</a></li>
<li><a href="https://make.wordpress.org/marketing/">Make WordPress Marketing</a></li>
</ul>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Sat, 13 Feb 2016 15:41:22 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:14:"Katie Richards";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:25;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:35:"WPTavern: Rescue Themes is For Sale";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51436";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:45:"http://wptavern.com/rescue-themes-is-for-sale";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2313:"<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/rescue-themes.png" rel="attachment wp-att-51442"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/rescue-themes.png?resize=1025%2C390" alt="rescue-themes" class="aligncenter size-full wp-image-51442" /></a></p>
<p>After two years in business, <a href="https://twitter.com/jamigibbs" target="_blank">Jami Gibbs</a> is <a href="https://blog.jamigibbs.com/rescue-themes-is-available-for-purchase-2a8a947031b8#.r36mtcvqy" target="_blank">selling Rescue Themes</a>. The niche theme shop specializes in products for nonprofits, politics, breweries, and e-commerce websites.</p>
<p>Gibbs did not publicly disclose how much revenue the shop is generating, but <a href="https://rescuethemes.com/" target="_blank">Rescue Themes</a> has seven products available on Themeforest ranging in price from $16-$59. She also has several free plugins and two free themes (<a href="http://wptavern.com/gateway-a-free-wordpress-theme-built-on-the-foundation-framework" target="_blank">Gateway</a> and <a href="http://wptavern.com/politics-a-free-wordpress-theme-for-political-campaigns" target="_blank">Politics</a>) listed on WordPress.org.</p>
<p>&#8220;This decision hasn’t come lightly and I’ve had many sleepless nights wrestling over it,&#8221; Gibbs said in her post announcing that the shop is for sale. &#8220;Rescue Themes has done quite well for me and I admit that I feel a little sad letting it go but I’ve come to a point where the time I have to dedicate to it has dwindled as new projects and opportunities take over my day. It would pain me infinitely more seeing it go adrift than it would to hand over the keys to someone else.&#8221;</p>
<p>After enlisting the help of the professional theme reviewers at the Themereview.co service, Gibbs began building all of her products with WordPress standards in place. With Themeforest as her primary distribution avenue, she was one of the few WordPress sellers making a difference by providing standards-compliant products.</p>
<p>Gibbs is looking for a buyer who will make positive contributions to the WordPress community, continue support for her current customers, and continue to distribute the current products under the GPL license.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 12 Feb 2016 20:04:46 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:26;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:81:"WPTavern: Bluehost Open Sources Script Used to Update 2.5 Million WordPress Sites";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51421";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:91:"http://wptavern.com/bluehost-open-sources-script-used-to-update-2-5-million-wordpress-sites";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3125:"<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/bluehost.png" rel="attachment wp-att-51424"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/bluehost.png?resize=843%2C403" alt="bluehost" class="aligncenter size-full wp-image-51424" /></a></p>
<p>During the 2015 State of the Word address, Matt Mullenweg highlighted <a href="https://www.bluehost.com/" target="_blank">Bluehost</a>&#8216;s recent efforts to update its customers&#8217; outdated WordPress sites. After finding that 80% of their WordPress installations were not on the latest version, Bluehost wrote a Perl script that uses WP-CLI to update sites, even those running on versions as old as 1.0.2. The company successfully updated more than 2.5 million customer sites.</p>
<p>According to Bluehost representative <a href="https://twitter.com/mikehansenme" target="_blank">Mike Hansen</a>, the script took about a month to run through all of the outdated sites. First, it checks the status of a site, then backs everything up, and then runs all updates via WP-CLI. The script then checks the site to see if everything is good. If anything breaks, it restores the backup. Hansen said that they execute it on a cron job so that it doesn&#8217;t require a person to run it. The company uses the script to continually update WordPress sites without customers having to initiate updates.</p>
<p>Bluehost used the script to successfully update 99% of the WordPress sites on its platform. After the first major update, fewer than 0.007% of customers reported issues and WordPress-related technical support requests have been reduced by 18%.</p>
<p>&#8220;Our support requests are down partly because we are not getting as many hacked sites on super old versions of WordPress,&#8221; Hansen told the Tavern. &#8220;Things break less often. Plugin and theme incompatibilities have been reduced.</p>
<p>&#8220;Initially we were considering upgrading core, then plugins, then themes but we realized that doing them all at once was the most successful route,&#8221; he said.</p>
<p>Bluehost&#8217;s initiative was a huge vote of confidence for WordPress updates, as they have now been battle tested by the host all the way back to very old versions. When 4.3 was released, Bluehost was able to do 2.6 million core updates, along with plugins and themes.</p>
<p>Yesterday the company open sourced the WP Tools update script under the GPL license. It&#8217;s now <a href="https://github.com/bluehost/wp-tools" target="_blank">available on GitHub</a> for any person or hosting company to use or modify. The script received its <a href="https://github.com/bluehost/wp-tools/pull/1" target="_blank">first pull request</a> in less than 24 hours. With contribution from other hosts working to make the internet more secure, WP Tools has the potential to become even more reliable for ongoing WordPress updates.</p>
<p>Check out the video below to see the part of the State of the Word where Matt Mullenweg tells Bluehost&#8217;s story of updating outdated WordPress sites:</p>
<div class="embed-wrap"></div>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 12 Feb 2016 18:54:29 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:27;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:29:"Matt: WordCamp US 2017 + 2018";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=46137";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:44:"https://ma.tt/2016/02/wordcamp-us-2017-2018/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:609:"<p>When we chose Philadelphia to host the first ever WordCamp US, it was actually for two years, <a href="https://2016.us.wordcamp.org/">they&#8217;ll be hosting again this year December 2-4</a>. We&#8217;re going to pick the host city and group for 2017 and 2018 in the next few months, though, and in fact the <a href="https://2016.us.wordcamp.org/2016/01/08/applications-for-the-wordcamp-us-2017-host-city-now-open/">applications are open and closing in a few weeks</a>. If you think your city and team have what it takes to wow the world with the best WordPress event, please put your hat in the ring!</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 12 Feb 2016 00:06:21 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:28;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:61:"WPTavern: WordCamp Europe Assembles 130-Person Volunteer Team";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51276";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:71:"http://wptavern.com/wordcamp-europe-assembles-130-person-volunteer-team";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2410:"<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/12/wceu-2016.png" rel="attachment wp-att-49423"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/12/wceu-2016.png?resize=1025%2C407" alt="wceu-2016" class="aligncenter size-full wp-image-49423" /></a></p>
<p>The call for volunteers for WordCamp Europe <a href="https://2016.europe.wordcamp.org/the-call-for-volunteers-for-wordcamp-europe-is-now-closed/" target="_blank">closed this week</a> and organizers announced that they have assembled a team of more than 100 people to help run the event. The 130 applicants represent 33 countries from Europe and beyond, with the highest numbers from the United States, Germany, The Netherlands, Italy, and Romania.</p>
<p>The event will be held in Vienna at the end of June where the team will finally gather together in person. In the meantime, organizers are navigating the challenges of working remotely with a volunteer team that is spread across the globe.</p>
<p>&#8220;For now we are using Zapier with Trello as connected apps and lots of well organized columns,&#8221; said Milan Ivanović, one of the leaders of the Volunteer Team. &#8220;We contacted every volunteer via email manually and soon we will use WordPress Slack for general communication before and on the day of the event.&#8221;</p>
<p>WordCamp Europe organizers have high expectations for cities that apply to host future events. Potential cities will need to have a volunteer team with experience at previous events. This year&#8217;s event nearly doubles the number of volunteers from last year, expanding the pool of capable hands for 2017.</p>
<p>&#8220;The biggest challenge would definitely be meeting everybody&#8217;s wishes while assigning roles,&#8221; Ivanović said. &#8220;Next week we will do a final check of the venue and start working on assigning roles.&#8221;</p>
<p>Volunteers are expected to arrive a few days ahead of the event for a briefing and to familiarize themselves with the venue.</p>
<p>&#8220;Leading up to the event we are going to have weekly meetings and try to cover as much as we can to prepare as best as possible,&#8221; Ivanović said. &#8220;Volunteers are investing dozens of hours into this event. I also want to emphasize that we are not covering the costs, but there is something so noble and beautiful when volunteering.&#8221;</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 11 Feb 2016 18:53:01 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:29;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:76:"WPTavern: BuddyPress 2.5 Will Add Customizable Emails via a New BP Email API";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51390";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:86:"http://wptavern.com/buddypress-2-5-will-add-customizable-emails-via-a-new-bp-email-api";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3256:"<p>BuddyPress 2.5 <a href="https://buddypress.org/2016/02/buddypress-2-5-0-beta-1/" target="_blank">beta 1</a> was released this week with a list of new features and improvements to test, including a brand new <a href="https://buddypress.trac.wordpress.org/ticket/6592" target="_blank">BP Email API</a>. The new API allows users to easily customize any email that BuddyPress sends, without having to leave the admin or write any code.</p>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/email-customizer.png" rel="attachment wp-att-51399"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/email-customizer.png?resize=991%2C575" alt="email-customizer" class="aligncenter size-full wp-image-51399" /></a></p>
<p>The <a href="https://buddypress.trac.wordpress.org/ticket/6592" target="_blank">ticket</a> to overhaul BuddyPress emails was opened six months ago and has received more than 100 replies with feedback and patches from multiple contributors. BuddyPress lead developer Paul Gibbs spearheaded this initiative and summarized the outcome when introducing the new API on his blog:</p>
<blockquote><p>In a nutshell, we moved emails into a custom post type (BuddyPress’ first!) with a supporting taxonomy (BuddyPress’ second!), devised a HTML email template with Customizer integration, and wrote a new API to manage how we represent emails internally and how we send them (goodbye, <a href="https://developer.wordpress.org/reference/functions/wp_mail/" target="_blank">wp_mail</a>!).</p></blockquote>
<p>Gibbs has been writing plugins for the platform for the past seven years. He started with <a href="https://wordpress.org/plugins/welcome-pack/" target="_blank">Welcome Pack</a>, a plugin that allowed community admins to customize welcome emails to enhance the new user experience. His experience building and maintaining the now defunct Welcome Pack led him to work on improving BuddyPress&#8217; core email handling.</p>
<p>&#8220;With retrospect, adding customizable emails to Welcome Pack is what killed my interest in that plugin,&#8221; Gibbs said. &#8220;It was such a lengthy, painful slog to get the customization working and nicely implemented (I picked the wrong approach), that when it was finally done, so was I!&#8221;</p>
<p>Gibbs&#8217; work on this ticket makes emails in BuddyPress 2.5 much easier to edit than they ever were in his Welcome Pack plugin. The new Emails custom post type allows administrators to edit the content of the plugin&#8217;s 16 default emails directly in the admin. The email template can also be edited in the customizer at <strong>Appearance >> Emails</strong> with controls to change the header, body, and footer background colors, and text size/colors.</p>
<p>The new email capabilities allow BuddyPress community managers to personalize their sites&#8217; communication without having a lot of technical knowledge. It&#8217;s a significant improvement over the generic stock emails previously sent by the plugin.</p>
<p>According to the <a href="https://buddypress.trac.wordpress.org/roadmap" target="_blank">project roadmap</a>, the 2.5 milestone is now 96% complete and the official release is expected in three weeks.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 11 Feb 2016 15:28:40 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:30;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:35:"Matt: Lent This Year: Buying Things";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=46113";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:51:"https://ma.tt/2016/02/lent-this-year-buying-things/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:1781:"<p>Today is Ash Wednesday and the start of Lent, when typically Catholics give something up, or try to form a new habit, for about six weeks. Many of my friends who aren&#8217;t Catholic do the same, it&#8217;s a good practice to try to go without something in your life you take for granted. It can make you reexamine assumptions, take you out of your comfort zone, or make you appreciate the thing you gave up much more when you return to it. Also it&#8217;s just a bit more fun when you do it with friends. <img src="https://s.w.org/images/core/emoji/72x72/1f600.png" alt="?" class="wp-smiley" /></p>
<p>Last few years I&#8217;ve given up:</p>
<ul>
<li>2013: Meat.</li>
<li>2014: <a href="https://ma.tt/2014/03/no-smartphone-for-lent/">Smartphones</a>. (This was hard!)</li>
<li>2015: I meditated every day using <a href="http://www.calm.com/">Calm</a>.</li>
</ul>
<p>This year I&#8217;ve been thinking about what I take for granted, and surveyed friends for what their suggestions would be. One of the things that I&#8217;m pretty bad at is buying too many things, especially gadgets. I&#8217;m pretty good at clearing out old ones so it doesn&#8217;t get too cluttered, but I definitely have a habit of getting the latest USB gadgets on Amazon, shirts from <a href="http://www.kitandace.com/">Kit &amp; Ace</a>, workout stuff from <a href="http://shop.lululemon.com/">Lululemon</a>, <a href="http://www.nike.com/us/en_us/c/nikeid">shoes I don&#8217;t need</a>, etc.</p>
<p>So the thing I&#8217;m going to give up this year is shopping or buying any material things. I&#8217;m also going to take the opportunity to try and reduce the stuff I do have in my life to things that <a href="http://tidyingup.com/books/the-life-changing-magic-of-tidying-up-hc">spark joy</a>.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 10 Feb 2016 19:03:04 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:31;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:69:"WPTavern: Learn How to Test WordPress Core Patches with VVV on Mac OS";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51369";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:79:"http://wptavern.com/learn-how-to-test-wordpress-core-patches-with-vvv-on-mac-os";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2764:"<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/vvv-test-patches.png" rel="attachment wp-att-51374"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/vvv-test-patches.png?resize=1025%2C385" alt="vvv-test-patches" class="aligncenter size-full wp-image-51374" /></a></p>
<p>Testing patches is one way that both developers and non-developers can contribute to WordPress without writing any code. It&#8217;s a valuable service that keeps things moving along in tickets and helps patches make their way into core.</p>
<p>The most challenging part of testing patches is getting your testing environment set up properly. The WordPress core handbook has <a href="https://make.wordpress.org/core/handbook/testing/patch/" target="_blank">instructions for using Grunt to test patches</a>, but they&#8217;re not easy to follow if you happen to be a more visual learner.</p>
<p>Yesterday Ryan Boren published a tutorial for <a href="https://make.wordpress.org/flow/2016/02/08/testing-patches-with-vvv-on-mac-os/" target="_blank">testing patches with VVV on Mac OS</a>, complete with screenshots at every step. The bulk of the instructions cover establishing a test environment with <a href="https://github.com/Varying-Vagrant-Vagrants/VVV" target="_blank">VVV</a>, which requires you to install Vagrant, install Virtualbox, initialize Vagrant, install Git, and finally install VVV. Applying a patch and reverting it after testing is probably the easiest part of the entire process.</p>
<p>Boren&#8217;s tutorial is one of the clearest and easiest to follow, because it helps you visualize what success looks like at every step. If you want to add mobile testing into the mix while testing patches, check out his <a href="https://make.wordpress.org/core/2015/03/16/mobile-patch-testing-with-vvv-and-xip-io/" target="_blank">post</a> on using VVV and <a href="http://xip.io/" target="_blank">xip.io</a>. Boren explained how he goes through tickets with patches that change UI and adds mobile and desktop screenshots of his testing.</p>
<p>&#8220;These screenshots hasten UI feedback and usually reveal visual glitches on mobile that are then patched up, making our mobile experience that little bit better,&#8221; he said. &#8220;Until that blue sky someday when I can apply patches to a patch server with a tap, I’ve found VVV and xip.io to be the easiest way to do localhost testing of patches from mobile devices.&#8221;</p>
<p>The process of setting up a test environment is the most time-consuming aspect of testing patches, but once you have it in place, it&#8217;s easy to apply them. Have you found an easier way to test patches with support for mobile devices? Let us know in the comments.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 10 Feb 2016 12:30:08 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:32;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:87:"WPTavern: Automattic Launches Components with 5 New Starter Themes Based on Underscores";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51347";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:97:"http://wptavern.com/automattic-launches-components-with-5-new-starter-themes-based-on-underscores";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3366:"<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/components.png" rel="attachment wp-att-51349"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/components.png?resize=1025%2C429" alt="components" class="aligncenter size-full wp-image-51349" /></a></p>
<p>Automattic&#8217;s team of theme developers <a href="http://themeshaper.com/2016/02/09/introducing-components/" target="_blank">announced the release of Components</a> today along with a suite of themes that extend the popular <a href="http://underscores.me/" target="_blank">Underscores</a> starter theme for specific use cases. These include a classic blog, modern blog, portfolio, magazine, and business theme. The new <a href="http://components.underscores.me/" target="_blank">Components</a> website lets theme authors download a theme that includes reusable components tailored to each theme type.</p>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/components-portfolio.png" rel="attachment wp-att-51354"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/components-portfolio.png?resize=1025%2C625" alt="components-portfolio" class="aligncenter size-full wp-image-51354" /></a></p>
<p>Each theme includes general layout structures and templates to support the specific type of theme. For example, when you select the &#8216;Portfolio&#8217; starter theme, your download will include the following:</p>
<ul>
<li>A portfolio post type, courtesy of Jetpack, added to all the necessary files</li>
<li>A grid portfolio view</li>
<li>A single column blog template</li>
<li>A sliding panel for navigation, social menu, and also widgets</li>
<li>A large featured image with full-width script</li>
</ul>
<p>There&#8217;s not much to see once the theme is installed, because it&#8217;s just a starting point designed to save time when building layouts and templates. Automattic&#8217;s theme team used its collective knowledge of developing hundreds of themes in order to create these five starter themes with the bare basics required for presenting content via these five major theme categories.</p>
<p>Components was inspired by the community behind Underscores, according to Automattic theme wrangler David Kennedy. Developers using the starter theme often offered contributions that were beyond the scope of a simple starter theme.</p>
<p>&#8220;While maintaining and improving Underscores, we always see great pull requests from the community that we turn away because the contributions end up being too specific for a normal starter theme,&#8221; Kennedy said. &#8220;Many of those additions would have been perfect in most themes. Now, some of them have a home in a project that zeroes in on a certain kind of user with each theme it builds.&#8221;</p>
<p>The project&#8217;s goal is to provide a &#8220;more modular, pattern-based approach to theme development.&#8221; Even if you&#8217;re not building with Underscores, many of the <a href="https://github.com/Automattic/theme-components/tree/master/components" target="_blank">theme components</a> included in this project can be easily reused elsewhere as theme building blocks. The components library is open source and <a href="https://github.com/Automattic/theme-components" target="_blank">available on GitHub</a> for anyone to fork.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 10 Feb 2016 05:19:14 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:33;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:34:"Matt: The Problem with Phone Calls";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=46103";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:51:"https://ma.tt/2016/02/the-problem-with-phone-calls/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:1117:"<p><a href="http://www.theatlantic.com/technology/archive/2015/08/why-people-hate-making-phone-calls/401114/">The Atlantic does an in-depth look on why it&#8217;s much less pleasant to have phone calls than it used to be</a>. It&#8217;s true, but there are also some great alternatives that I&#8217;ve been having luck with recently. <a href="https://www.messenger.com/">Facebook Messenger</a> has a built-in audio (and video!) calling system that is okay. <a href="http://www.apple.com/mac/facetime/">Facetime</a> isn&#8217;t just for video, you can also make audio calls with it and they sound amazing (something I learned from Kanye, true story). Many times I&#8217;ll try a phone number in Facetime first just in case the person uses an iPhone. And finally <a href="http://www.skype.com/en/">Skype</a> still works pretty well even if its clients are a bit heavy. If I&#8217;m able to be at a computer (all of these work on computer as well as apps), <a href="http://www.amazon.com/gp/product/B00D4LBOV6">this Sennheiser USB headset</a> sounds great, blocks background noise, and people say that I sound clear.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 09 Feb 2016 23:58:28 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:34;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:109:"Post Status: Complete coverage should not be a requirement for core inclusion of WordPress REST API endpoints";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:31:"https://poststatus.com/?p=20957";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:62:"https://poststatus.com/wordpress-rest-api-should-be-iterative/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:19055:"<p>The <a href="http://wp-api.org/">WordPress REST API</a> is at a bit of a crossroads. There is a proposal on the table by the core team of four contributors — Ryan McCue, Rachel Baker, Daniel Bachhuber, and Joe Hoyle — to ship endpoints to WordPress core iteratively. There is a pushback on this proposal by WordPress Project Lead and co-founder Matt Mullenweg.</p>
<p>The API should be iterative, and should not require complete admin parity to be included, as Matt has proposed.</p>
<h3>The state of what’s already in core, and what’s pending</h3>
<p>The REST API infrastructure is already in core, having been included in WordPress 4.4. The infrastructure provides just that, an underlying infrastructure, to offer plugins a suite of base functionality to utilize, making the development of their own RESTful features easier.</p>
<p>The infrastructure allows developers to get a huge head start for creating their own REST API endpoints and functionality. The endpoints are how a third party client or developer would actually interact with the API, and the endpoints for WordPress core functionality are what are in debate.</p>
<p>Every piece of WordPress functionality — data that can be read, created, updated, or deleted — would ideally be available to the WordPress REST API, so that anything possible in WordPress is also possible via the API, and therefore also possible from a third party application interacting with the API.</p>
<p>However, creating this complete coverage is unrealistic in the current WordPress development structure, and should not be necessary for shipping initial endpoints to WordPress Core.</p>
<p>The proposal from the core REST API team is to begin by shipping four core WordPress objects: posts (meaning the posts table, which includes all post types), terms, comments, and users. These four core objects have been developed as endpoints, are well tested, and are ready for core. There are kinks to work out, but overall, they are an excellent starting point.</p>
<p>Matt’s proposal is that the API should not ship in core, with any endpoints, until complete “wp-admin coverage” is available: meaning that until all actions a user can make in the WordPress admin can be achieved via the API, then it shouldn’t go into core. He said in a <a href="https://wordpress.slack.com/archives/core-restapi/p1454626846001168">meeting about the API</a>, to firm up his proposal, that there should be, &#8220;no partial endpoints in core. let’s design a complete API, not half-do it and foist it on millions of sites.&#8221;</p>
<p>The primary areas not covered by the API currently are as follows: widget management and display, menu management and display, theme and plugin management, multisite management, and site options management.</p>
<p>So Matt would like to see each of these endpoints be developed and battle tested before any endpoints ship in core. I agree with the REST API team that the first four objects should take priority, and should go in before these other objects are ready. The remaining objects should each be feature plugins of their own, and go in over time, as they are ready, without delaying the four core objects currently under review.</p>
<h3>Many use cases covered</h3>
<p>Posts, terms, comments, and users endpoints make up practically all WordPress content. This means that a huge swath of use cases for the API are covered with these four objects.</p>
<p>Matt’s thinking that a core WordPress REST API should have all or nothing coverage is a false dichotomy. Applications like <a href="https://developer.wordpress.com/calypso/">Calypso</a> — a WordPress admin replacement based on WordPress.com’s own and separate REST API — are, I believe, the exception for usage of the REST API, not the rule. I believe most people that would take advantage of the REST API’s core inclusion are going to use parts of it only, and I believe most of what they’ll be seeking is content related, versus site management.</p>
<p>The WordPress admin is exhaustive: it’s pretty much anything and everything one would want to do in WordPress. Custom admins that would utilize the REST API are unlikely to completely mimic the current admin; if they were to do so, it’d be difficult to see the point of making such an application interface, versus just using the tried and true default. I’m certain <em>some</em> new full implementations of the admin will show up (similar to Calypso), but I don’t think it’ll be a common use case.</p>
<p>More likely, even custom admins would mostly be in the business of manipulating content — specifically catering content editing experiences for a specific type of website — and would be satisfied creating their own custom endpoints for other site management tasks until those endpoints are available through feature plugins or in core itself.</p>
<p>For tasks such as custom front-end websites that are decoupled from WordPress, the WordPress REST API is immediately useful, using the four proposed objects. <a href="https://make.wordpress.org/core/2016/02/05/rest-api-meeting-summary-feb-4/#comment-29219">As K. Adam White said</a>, delaying the endpoints that are ready, “will effectively block a significant group of potential adopters coming from external platforms.”</p>
<h3>The value of core inclusion, verses keeping endpoints in the plugin</h3>
<p>Core inclusion of endpoints is a stamp of approval that the endpoints are ready for prime time. Organizations that would use the API for bespoke applications would prefer to know that the endpoints will be ready and available for the long term, and keeping endpoints out of core is a sign — intended or not — that things can change, and will prevent adoption that is important for WordPress’s growth.</p>
<p>Whereas, <a href="http://journal.rmccue.io/340/progressive-enhancement-with-the-wordpress-rest-api/">a procedure of iterative development</a>, vertically focused by endpoint, can be a signal of readiness provided by the WordPress core team, essentially saying that those endpoints in core are stable and will maintain WordPress’s well known commitment to backward compatibility, while those endpoints in the feature plugin may be stable, but are subject to change.</p>
<h3>Iteration has been good for WordPress</h3>
<p>Iteration has been paramount to nearly all WordPress features, and it doesn’t make sense why it wouldn’t be a part of the REST API’s core inclusion.</p>
<p>In a meeting about the status of the API, Matt Mullenweg said, “I know it’s a minority opinion, but I would be pretty skeptical of merging a partial API into core, I think it would do a lot more damage than benefit.” I fail to understand what kind of damage including these endpoints would cause.</p>
<p>Matt <a href="https://ma.tt/2016/02/chicken-and-eggs/">has insinuated</a> that the API as-is would be like shipping a car with no wheels, and I vehemently disagree with the analogy. I think the API is more like a Prius, and the goal is a Tesla. It’s a hybrid, with partial but important coverage, that betters the web (or the environment, for the car analogy). It’s not full coverage (like the fully electric Tesla), but it’s better than nothing (gas guzzler!). Okay, enough analogies, because honestly those don’t help that much. But the API as-is is certainly not a wheel-less car. It’s a perfectly drivable and nice car, it’s just not yet fully the car of tomorrow.</p>
<p>Iteration and WordPress have gone hand in hand for ages. Almost every feature I can think of in WordPress has iterated over time, from the initial release: the Customizer, WordPress media management, custom post types, menu management, and more. It’s important to ship features that work, but that doesn’t mean they have to be exactly what you envision. WordPress itself is far from perfect, yet it’s available for download. Every lead developer could tell you dozens of things they’d like to improve, but they’re perfectly fine shipping new releases without every one of those new features.</p>
<h3>Vertically integrated API support</h3>
<p>Let’s do a mental exercise on the difference between building horizontal and vertical support in the API. This isn’t how one would really build an API, but it’s how we’ll envision calculating support for it.</p>
<p>If you envision the WordPress dashboard, there are many paths you can take. Every top level admin tab is available to you: Add new post, visit the settings page, choose a theme, etc. The REST API cannot currently mimic every action you can take. I would define horizontal support as visiting the admin, identifying each potential action one step away from that first view, and creating that functionality with the REST API. You’d have a lot more endpoints, but the endpoints would be incomplete — and one layer deep.</p>
<p>The next step, if working horizontally, would be to take each new view you just visited, based on the previous action, and do it again. This would cover <em>a lot more</em> functionality. Change widget order, move menu items around, delete comments, etc. But there are yet further levels you can take each of these screens. However, say the initial screen had 12 possible events, and now each of those 12 has 12 possible events, you now have 144 events to mimic in the API, but you still have layers to go before you have complete support of any particular fully fledged task.</p>
<p>If you continue that process, you’ll be attacking support horizontally, and you’ll be at it for a long time.</p>
<p>Now, let’s think vertically. Let’s choose an end goal: like publish a blog post. Okay, now let’s go back to the admin. This time, we’re going to enable support for adding new posts with the API; that’s one action, and we’re going to ignore other possible actions that don’t have to do with adding a post.</p>
<p>On our next screen, we have new options, but not all of them are explicitly about publishing a post. However, many of these options are important to publishing a post: information like assigning an author (users), and putting the post into a category (terms). So we’re going to do what we need to do with each of these things that enables us to better support posting. </p>
<p>Okay, so we can now publish a post via the API, and we’ve also enabled baseline support for stuff that posts expect. The next step in the flow may be that someone would comment on that post. So we’re going vertically through the process. We’re providing complete coverage for these steps. And it gets more complicated than what I’ve said so far. Posts could have meta data, or be password protected, or they might be multiple post types. </p>
<p>Each of these creates new considerations we must account for to have complete vertical coverage of the process of publishing a post. We haven’t even touched managing site settings or other functionality that doesn’t apply to publishing a post. But as we realize the stuff that interacts with this most important task of publishing content, we begin to form a minimum viable product for our API, to know what we need to ship to fully and well support all things posts with the API. You may still take 144 steps, but at the end, you’ll have more coverage of fewer things, versus light coverage of all things.</p>
<p>This is what the REST API team has done with these four objects. Posts, terms, users, and comments are the content processing experience in WordPress. It’s a fully fledged API experience, without shortcuts. There are challenges of course, and room to improve, but from top to bottom the process of content creation and manipulation is part of the API.</p>
<p>As the REST API team have said in various channels during this debate, the non-supported endpoints are mostly isolated from the publishing experience. Supporting posts is co-dependent on supporting the author of the post, and the terms for the post. Supporting the settings screens for the website, or managing themes and plugins, or managing widget areas are not co-dependent on the post experience.</p>
<p>These other verticals are important, and it is everyone’s goals to create broad, horizontal support of WordPress functionality. But it should be done one vertical feature at a time, and we shouldn’t wait to ship something that is near ready for prime time until we’ve supported absolutely everything. For one, the API is useful to many people <em>right now</em>, but also, the API, unless the entire development strategy of WordPress changes, will <em>never</em> be caught up to support every WordPress feature.</p>
<h3>Truly “complete coverage” would require API-first driven development</h3>
<p>For the WordPress REST API to truly have “complete coverage” of WordPress features, then the API would have to be the first consideration when building a new feature. This wouldn’t be a bad thing! But it’s not the way WordPress development works right now.</p>
<p>Stripe is a great example. When you hear a developer talk about Stripe, the popular merchant processor, the first thing they’ll say is how good the API is. Well, that’s because Stripe <em>is</em> the Stripe API. No feature ships unless it started with API coverage.</p>
<p>Developers love working with Stripe, because anything that can be accomplished with Stripe is accomplished with the API. With WordPress, the REST API team is running to catch up with core development; core development is not centrally focused around the REST API.</p>
<p>And as long as core development operates outside the scope of API-first, then the API will always be running to catch up, and the smaller team surrounding API development will never maintain pace with core.</p>
<p>WordPress already learned this lesson with unit testing. For years, unit testing was nice to have, but not required for commit. Today, WordPress has unit testing coverage of <a href="http://scotty-t.com/coverage/index.html">less than 50%</a>, even though all new commits require tests. Unit testing, though now a first class citizen to WordPress development, is still catching up.</p>
<p>I’m not saying whether or not WordPress should be developed API-first, but I am saying that Matt’s goal of complete coverage <em>before shipping</em> would just mean the API will never ship, because it will <em>never</em> have complete coverage with the current development strategy.</p>
<h3>The importance of adoption, and design for the majority</h3>
<p>It was recently pointed out that the REST API infrastructure is only used by 20 plugins. It makes it appear as if it’s not an important WordPress feature, and that sentiment is wrong.</p>
<p>Consider nearly any other software. I’ll use MailChimp as an example this time. Loads of people use Mailchimp. Mailchimp has a REST API, and I use it for Post Status. My implementation is not one of their official integrations, which they noted they have 845 of <a href="https://poststatus.com/category/planet/feed/">in their 2015 report</a>. Mine is just me interacting with their API — only trackable by counting total API calls.</p>
<p>Well, Mailchimp has millions of users, and those millions of user accounts sent over 204 billion emails in 2015. A fraction of those users (I assume) are responsible for more than 29 billion calls to Mailchimp’s API, either through custom interactions (like me), or through one of the 845 official Mailchimp integrations. It really doesn’t matter that there are only 845 integrations with Mailchimp’s API; because the impact of those integrations and the developers otherwise interacting with the API had huge implications that make Mailchimp a more attractive service.</p>
<p>The second <a href="https://wordpress.org/about/philosophy/">core philosophy</a> of WordPress is to “design for the majority.” It says, “Many end users of WordPress are non-technically minded. They don’t know what AJAX is, nor do they care about which version of PHP they are using.” And while this is true, it doesn’t mean that technical features don’t benefit the majority, even if they aren’t directly interacting with them.</p>
<p>The WordPress REST API is an invisible feature to most users, but it also will eventually impact nearly all users of WordPress. Like Mailchimp and Stripe, the WordPress REST API can and will impact the overall experience of using WordPress itself. Especially as third parties create gateways for interaction with millions of WordPress installs via the API, the API will be very much for the majority. But it will always be the kind of situation where a small number of integrations are responsible for a large number of interactions.</p>
<p>We should not base our decision making process for including the API in core on how many plugins are currently supporting the API. We should base our decision making on the potential impact developers can have developing applications with WordPress via the REST API, by utilizing the power in the API — power that can be utilized to improve publishing for everyone.</p>
<h3>The time for the WordPress REST API is now</h3>
<p>The time for the WordPress REST API is now. The API is not complete, but it is ready. This is <a href="https://ma.tt/2010/11/one-point-oh/">step one</a>. There are <a href="https://make.wordpress.org/core/2016/02/05/rest-api-meeting-summary-feb-4/">real issues</a> to be resolved with the first four objects, but the first four objects should not sit on the sidelines, excluded from WordPress core, because “complete coverage” doesn’t yet exist.</p>
<p>There is a capable and willing team driving the WordPress REST API. We all owe our gratitude to Ryan McCue, Rachel Baker, Daniel Bachhuber, Joe Hoyle, and the other contributors that have worked tirelessly — many of them for many years — to make the WordPress REST API a reality.</p>
<p>We should not take these efforts for granted. A contributor’s time is finite, and everyone that’s worked hard on the API could have spent that time on other things. While time spent shouldn’t be our metric for including a feature in core, we should consider it now. This team has worked for a long time, all along asking for others to provide feedback, and at the 11th hour a vocal (and powerful) minority have decided to throw considerable roadblocks at their efforts.</p>
<p>The WordPress REST API is a good feature for WordPress to have. REST APIs are a staple of modern web applications. The endpoints proposed for core inclusion is a reasonable next step after the infrastructure that <a href="https://poststatus.com/wordpress-4-4/">went in WordPress 4.4</a>. Whether these first four objects are ready for 4.5, or get postponed until 4.6 isn’t a huge deal; they should be ready before they are merged. But they should not be sidelined until the fantasy of complete coverage is met.</p>
<p>The inclusion of the WordPress REST API should be iterative, smart, and focused. It shouldn’t be all or nothing. It should be now.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 09 Feb 2016 21:03:05 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:15:"Brian Krogsgard";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:35;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:103:"WPTavern: WP REST API Team Releases Version 2 Beta 12, Seeks Feedback from WordPress’ Lead Developers";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51322";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:109:"http://wptavern.com/wp-rest-api-team-releases-version-2-beta-12-seeks-feedback-from-wordpress-lead-developers";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:6785:"<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/04/wp-rest-api.jpg" rel="attachment wp-att-43000"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/04/wp-rest-api.jpg?resize=1025%2C469" alt="wp-rest-api" class="aligncenter size-full wp-image-43000" /></a></p>
<p>The WP REST API team <a href="https://make.wordpress.org/core/2016/02/09/wp-rest-api-version-2-0-beta-12/" target="_blank">released version 2 beta 12</a> today. Daniel Bachhuber highlighted the breaking changes in the release that developers will want to digest before updating. This includes the removal of meta endpoints from the primary plugin into its own feature plugin, <a href="https://wordpress.org/plugins/rest-api-meta-endpoints/" target="_blank">now available on WordPress.org</a>.</p>
<p>In a <a href="http://wptavern.com/wordpress-contributors-look-for-a-path-forward-for-the-wp-rest-api#comment-143820" target="_blank">comment</a> on our coverage of the continuing discussion, WP REST API team member <a href="https://twitter.com/joe_hoyle" target="_blank">Joe Hoyle</a> clarified the team&#8217;s position on the endpoints&#8217; readiness for core:</p>
<blockquote><p>For the record, the REST API Team support further iteration on the existing endpoints before being merged into core. That could mean waiting for the WordPress.com API team to use those endpoints in production, or gathering more usage feedback from others. I am strongly against merging anything before it’s been well-proven and well-tested.</p>
<p>The proposal by the team was to include the 4 content endpoints when they are ready. We had a lengthly overview as to the progress of those endpoints, more details on what we feel is left to be done can be seen at the <a href="https://github.com/wp-api/wp-api/issues?q=is%3Aopen+is%3Aissue+milestone%3A2.0" target="_blank">issues queue for the 2.0 milestone</a>.</p>
<p>Why these endpoints specifically? Because they are co-dependent for the most part. Shipping Posts without support for Taxonomies would not be that useful.</p></blockquote>
<p>Hoyle also cautions that pursuing full coverage of wp-admin is a monumental task that could take several more years:</p>
<blockquote><p>Going for development of _all_ functionality (somewhere around 8-10 total data routes) should not be underestimated. It’s taken somewhere around a year and a half to get the current 4 to where they are now, and that was with 2 years prior art from Version 1.</p>
<p>As someone who has been in the weeds of that implementation for a while now, I cannot over over-stress just how tricky trying to retrofit a consistent, coherent interface on 13 years of organically grown code and ideas can become. I’m looking forward to being part of the writing the implementation for the remaining (and majority) of functionality, however I don’t want to stop users and developers benefitting from what is already being built for another [several] years.</p></blockquote>
<p>Hoyle emphasized that the team is not proposing merging the existing endpoints now, but he believes they are getting very close.</p>
<p>With the release of v2 beta 12, Bachhuber urged WordPress lead developers and committers to offer official feedback in hopes of building a consensus. Given the disagreements in the <a href="http://wptavern.com/wp-rest-api-delayed-contributors-facing-gridlock" target="_blank">recent meeting</a>, it&#8217;s clear that WordPress contributors have not been on the same page as far as what constitutes core readiness for the project.</p>
<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Right about now seems like a good time to get official feedback on WP REST API from <a href="https://twitter.com/WordPress">@wordpress</a>'s lead developers and committers. Just sayin'</p>
<p>&mdash; Daniel Bachhuber (@danielbachhuber) <a href="https://twitter.com/danielbachhuber/status/697067292782235648">February 9, 2016</a></p></blockquote>
<p></p>
<p>Feedback from contributors is starting to trickle in. WordPress core committer Jeremy Felt shared his thoughts in a <a href="https://jeremyfelt.com/2016/02/09/thoughts-on-merging-the-wp-rest-api-plugin/" target="_blank">post</a> on his blog today:</p>
<blockquote><p>I’m in favor of the REST API team’s proposal to merge the endpoints for the primary objects in WordPress—posts, comments, users, terms—when they’re ready.</p>
<p>When the endpoints for these objects are ready, I would like to see them merged early in a release cycle.</p>
<p>With these primary endpoints in, front end workflows can immediately start to take advantage. This is something groups have been doing for years with custom code already. Getting these groups to use the same structure is valuable.</p></blockquote>
<p>Core committer Weston Ruter summarized his opinion in a tweet:</p>
<blockquote class="twitter-tweet"><p lang="en" dir="ltr"><a href="https://twitter.com/danielbachhuber">@danielbachhuber</a> I'm for iterative inclusion of REST API endpoints, advising clients to make use of feature detection.</p>
<p>&mdash; Weston Ruter ⚡ (@westonruter) <a href="https://twitter.com/westonruter/status/697088319423778816">February 9, 2016</a></p></blockquote>
<p></p>
<p>The plugin is moving forward with regular betas while the discussion continues. Developers who are using the API in beta will need to continue to follow the project closely, as the latest beta makes changes to available features. 10up developer Eric Mann tweeted some of <a href="https://twitter.com/EricMann/status/697111525979328512" target="_blank">his challenges in using the API in beta</a>:</p>
<blockquote><p>My client installed the REST API before it included post meta. We had to build a bunch of custom work to support meta. Then the REST API updated to include meta and broke our integration. I spent a chunk of hours refactoring to compensate so we could update. Now, apparently, the REST API is pulling that meta support out and putting it in a separate plugin. Yet people still criticize me for saying I&#8217;m wary of placing too much dependency on the stability of the API.</p></blockquote>
<p>Joe Hoyle is currently crowdsourcing stats on <a href="https://docs.google.com/spreadsheets/d/1V-9s0U407iOR1II6yWOqBboMe9M6J7oeOJmwxpOvd9E/edit#gid=0" target="_blank">projects that are using the WP REST API v2 in production</a>. Developers who have stepped up to use the API have had to be nimble in accommodating its rapid development. At this time, the WP REST API team agrees that further iteration on the existing endpoints will be necessary before merging them into core. Continued feedback from developers with projects that use the API will be critical for demonstrating that the API has been well tested.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 09 Feb 2016 20:33:35 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:36;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:83:"WPTavern: WordPress Theme Review Team Recommends Authors Start Keeping a Change Log";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51297";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:93:"http://wptavern.com/wordpress-theme-review-team-recommends-authors-start-keeping-a-change-log";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2723:"<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/writing.jpg" rel="attachment wp-att-51302"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/writing.jpg?resize=1025%2C472" alt="photo credit: Green Chameleon" class="size-full wp-image-51302" /></a>photo credit: <a href="https://stocksnap.io/photo/8Y0EDX4VP9">Green Chameleon</a>
<p>Last April, WordPress Theme Review Team member Jose Castaneda <a href="http://wptavern.com/do-wordpress-org-themes-need-a-changelog" target="_blank">proposed that the team adopt a standard change log format</a>. Theme authors are not yet required to keep a change log but the general consensus is that it&#8217;s a good practice that benefits users.</p>
<p>Castaneda <a href="https://wordpress.slack.com/archives/themereview/p1452621691006215" target="_blank">revived the topic of change logs</a> during the team&#8217;s most recent meeting, saying he hopes this will be the year that they can finally standardize the readme.txt file and take action on the change log-related trac tickets. This would require action on <a href="https://meta.trac.wordpress.org/ticket/45" target="_blank">a meta trac ticket</a> to add change logs to the WordPress.org theme listing tabs and <a href="https://core.trac.wordpress.org/ticket/22810" target="_blank">a core ticket</a> that would expose the change log to users in the WordPress admin.</p>
<p>Castaneda <a href="https://make.wordpress.org/themes/2016/02/08/making-a-changelog-work-for-you/" target="_blank">posted</a> some basic recommendations as a first step towards educating theme authors on the proper format for writing a change log:</p>
<ul>
<li>Listing versions in reverse-chronological order (newest on top)</li>
<li>One sub-section per version</li>
<li>Group changes made per version</li>
<li>Don’t dump commit logs (if using version control)</li>
<li>Emphasize deprecations</li>
</ul>
<p>Even though a change log is not yet exposed in wp-admin, theme authors can still write one for users who are willing to do a bit of looking before updating. It&#8217;s especially important for things like changes to CSS selectors, the removal or addition of features, and anything that might cause child themes to break.</p>
<p>The theme review team is currently <a href="https://wordpress.slack.com/archives/themereview/p1452622051006226" target="_blank">focused on fixing its review process</a>, so pursuing the necessary tickets for a change log is not a pressing item on the agenda. When the team gets time to follow through on making change logs happen for WordPress.org themes, authors who already have one in place will be positioned to display them to their users.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 09 Feb 2016 17:06:45 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:37;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:76:"WPTavern: WordPress Contributors Look for a Path Forward for the WP REST API";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51252";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:86:"http://wptavern.com/wordpress-contributors-look-for-a-path-forward-for-the-wp-rest-api";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:8205:"<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/path-trees.jpg" rel="attachment wp-att-51293"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/path-trees.jpg?resize=1025%2C500" alt="photo credit: Valeriy Poltorak" class="size-full wp-image-51293" /></a>photo credit: <a href="https://stocksnap.io/photo/087EFF0277">Valeriy Poltorak</a>
<p>Over the weekend, discussion continued surrounding the direction of the WP REST API, as both Matt Mullenweg and Ryan McCue took to their WordPress blogs to clarify statements from <a href="http://wptavern.com/wp-rest-api-delayed-contributors-facing-gridlock" target="_blank">last week&#8217;s status meeting</a>. Differences of opinion are driving a heated debate about what constitutes a goalpost for the API&#8217;s readiness for core.</p>
<p>In a post titled &#8220;<a href="https://ma.tt/2016/02/chicken-and-eggs/" target="_blank">Chicken and Egg</a>,&#8221; Mullenweg addressed the recent WP REST API discussion while sharing an anecdote from a book that covers history from the mid-90s hip-hop era.</p>
<blockquote><p>I love the idea of Questlove realizing the song was missing something, and going back to the booth to keep working on it until it resonated with his target audience. A song that doesn’t stand up on its own wouldn’t be any better when bundled as part of an album. (Or Samsung would have the most popular apps on Android.) Fans hear the care and quality of each track, and they become super-fans.</p></blockquote>
<p>Mullenweg relates it to considerations when building products for the web:</p>
<blockquote><p>There’s this tension in everything we produce. Where’s the line to tread between <a href="https://ma.tt/2010/11/one-point-oh/" target="_blank">1.0 is the loneliest</a> and <a href="http://theleanstartup.com/principles" target="_blank">a minimum viable product</a>? Or is it about a <a href="http://theleanstartup.com/principles" target="_blank">minimum lovable product</a>? Are we building a car with no air conditioning or a car with no wheels?</p>
<p>&#8216;Pivot&#8217; has become passé, but it’s much worse to assume that distribution will solve something core to your product that isn’t working.</p></blockquote>
<p>Mullenweg <a href="https://wordpress.slack.com/archives/core-restapi/p1454630772001445" target="_blank">mentioned the same car analogy</a> during the meeting last week. In response to a commenter who asked for more clarification on how the analogy applies to the REST API, Mullenweg said the following:</p>
<blockquote><p>If you want a good heuristic to use generally: there were decades of cars, millions of vehicles and drivers, before they had air conditioning. The core value proposition of a car is transportation, AC just helps you get there more comfortably. You didn’t need a car to get AC, you could have it in your house. AC might cause you to chose one car over another, but you probably wouldn’t walk or ride a horse if the car didn’t have AC, you’d just roll down the windows.</p></blockquote>
<p>This begs the question, what constitutes wheels? Contributors to this discussion are divided on whether or not the existing endpoints are ready to be merged into core. The WP REST API team members, many of whom are already successfully using the API in production, believe that the endpoints are ready now. The current state of the API offers the ability to get content in and out of WordPress, opening it up for easier communication with other platforms, which many believe is the primary use case.</p>
<p>Mullenweg and others who joined the discussion last week are in favor of delivering something more complete, a REST API that supports everything available in wp-admin. This includes WordPress&#8217; many site management features and would put the API several releases away from core readiness.</p>
<p>In a <a href="http://wptavern.com/wp-rest-api-delayed-contributors-facing-gridlock#comment-142834" target="_blank">comment</a> on our initial report, Drew Jaynes advocated what he believes to be a middle ground that provides a solid jumping-off point. This would involve resolving the missing pieces in the existing endpoints before merging them (items like password-protected posts, autosaves and post previews, and meta.)</p>
<p>&#8220;As I and others from the contributor/committer camp said in the chat, there can be a middle ground,&#8221; he said. &#8220;Whether that ends up looking like the four core endpoints alone, four core endpoints with some flavor, XML-RPC parity, or some measure of wp-admin parity, remains to be seen,&#8221; he said.</p>
<p>In a post titled &#8220;<a href="http://journal.rmccue.io/340/progressive-enhancement-with-the-wordpress-rest-api/" target="_blank">Progressive Enhancement with the WordPress REST API</a>,&#8221; Ryan McCue outlined a full-on iterative approach that would push for distribution now and roll out more endpoints in future releases:</p>
<blockquote><p>Progressive enhancement is our key solution to a couple of related problems: forward-compatibility with future features and versions of WordPress, and robust handling of data types in WordPress. Progressive enhancement also unblocks the REST API project and ensures there’s no need to wait until the REST API has parity with every feature of the WordPress admin.</p></blockquote>
<p>McCue&#8217;s post goes into further detail of the REST API&#8217;s feature detection capabilities, which allow developers to easily detect support for features and build them in a forwards-compatible way while waiting for core support.</p>
<h3>Is Distribution the Answer?</h3>
<p>During last week&#8217;s meeting McCue <a href="https://wordpress.slack.com/archives/core-restapi/p1454633021001594" target="_blank">said</a> that continuing the project&#8217;s development as a feature plugin will do more harm than good. If the REST API is not allowed to ship without offering support for everything in wp-admin, the team would be forced to continue iterating on it as a feature plugin while simultaneously resolving difficult roadblocks in WordPress core. With just four major contributors operating at less than part time on the project, this requirement could stall the WP REST API indefinitely.</p>
<p>&#8220;We believe that the progressive enhancement approach is the best approach for continuing API development,&#8221; McCue said. &#8220;Progressive enhancement is a paradigm the REST API project ​must​ adopt, if it’s an API we want to add to (without breaking backwards compatibility) over the next 10 years.&#8221;</p>
<p>Mullenweg, who has led an iterative approach to development throughout WordPress&#8217; history, is wary of latching onto distribution as the only way forward.</p>
<blockquote class="twitter-tweet"><p lang="en" dir="ltr"><a href="https://twitter.com/Krogsgard">@Krogsgard</a> No one is against iteration. It's: iterate in plugin with low stakes, or iterate in core, shipping to tens of millions of sites?</p>
<p>&mdash; Matt Mullenweg (@photomatt) <a href="https://twitter.com/photomatt/status/696765965334290432">February 8, 2016</a></p></blockquote>
<p></p>
<p>The larger WordPress&#8217; usage becomes, the louder its footsteps are heard. Iterating on the REST API in core, with distribution to millions of sites, may affect the web in ways contributors cannot yet anticipate. As they say, heavy is the head that wears the crown. The ripples extend beyond WordPress sites to the outside platforms that will also consume the API.</p>
<p>Contributors are still discussing the nuances of iterative development in core vs. delivering a more complete API. Meanwhile, adoption is stilted by the uncertainty surrounding the project and the fact that it still carries a plugin dependency. It&#8217;s not yet clear whether WordPress contributors will dig in and push for inclusion of the endpoints against Mullenweg&#8217;s recommendation or whether they will opt to spend more time polishing the existing endpoints. If the WP REST API team is required to ensure that the API can support a wp-admin replacement, it may not land in core until the end of this year or later.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 08 Feb 2016 22:06:37 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:38;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:79:"WPTavern: WordPress.org Has Fewer Than 20 Plugins Using the WP REST API in Core";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51234";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:84:"http://wptavern.com/wordpress-org-has-fewer-than-20-plugins-using-the-wp-rest-api-v2";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:6523:"<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2014/12/plugin.jpg" rel="attachment wp-att-34902"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2014/12/plugin.jpg?resize=1024%2C485" alt="Plugin Recommendations Featured Image" class="size-full wp-image-34902" /></a>photo credit: <a href="https://www.flickr.com/photos/electrospray/164932344/">when i was a bird</a> &#8211; <a href="http://creativecommons.org/licenses/by-nc-nd/2.0/">cc</a>
<p>During <a href="http://wptavern.com/wp-rest-api-delayed-contributors-facing-gridlock" target="_blank">yesterday&#8217;s pivotal WP REST API meeting</a>, WordPress contributors discussed adoption of the API. A cursory search of the WordPress.org plugin directory shows that fewer than two dozen plugins are currently using the API scaffolding included in WordPress 4.4. For reference, here are the 20 plugins identified by Mika Epstein during the meeting, along with active installation numbers for each:</p>
<ul>
<li><a href="https://wordpress.org/plugins/acf-to-rest-api/" target="_blank">ACF to REST API</a> &#8211; 200+</li>
<li><a href="https://wordpress.org/plugins/acf-to-wp-api/" target="_blank">ACF to WP-API</a> &#8211; 1,000+</li>
<li><a href="https://wordpress.org/plugins/acf-to-wp-rest-api/" target="_blank">ACF to WP REST API</a> &#8211; 300+</li>
<li><a href="https://wordpress.org/plugins/custom-contact-forms/" target="_blank">Custom Contact Forms</a> &#8211; 70,000+</li>
<li><a href="https://wordpress.org/plugins/dashboard-directory-size/" target="_blank">Dashboard Directory Size</a> &#8211; 100+</li>
<li><a href="https://wordpress.org/plugins/invitations-for-slack/" target="_blank">Invitations for Slack</a> &#8211; less than 10</li>
<li><a href="https://wordpress.org/plugins/jwt-authentication-for-wp-rest-api/" target="_blank">JWT Authentication for WP REST API</a> &#8211; 100+</li>
<li>oEmbed API &#8211; no longer available as of 2/5/2016</li>
<li><a href="https://wordpress.org/plugins/prayers/" target="_blank">Prayers</a> &#8211; less than 10</li>
<li><a href="https://wordpress.org/plugins/rest-api/" target="_blank">WP REST API</a> &#8211; 9,000+</li>
<li><a href="https://wordpress.org/plugins/rest-json/" target="_blank">REST JSON</a> &#8211; less than 10</li>
<li><a href="https://wordpress.org/plugins/rest-routes/" target="_blank">REST Routes</a> &#8211; less than 10</li>
<li><a href="https://wordpress.org/plugins/searchwp-api/" target="_blank">SearchWP API</a> &#8211; 20+</li>
<li><a href="https://wordpress.org/plugins/store-locator-le/" target="_blank">Maps by Storelocator Plus</a> &#8211; 10,000+</li>
<li><a href="https://wordpress.org/plugins/tabulate/" target="_blank">Tabulate</a> &#8211; 100+</li>
<li><a href="https://wordpress.org/plugins/wp-api-categoriestags/" target="_blank">WP API Categories + Tags</a> &#8211; 10+</li>
<li><a href="https://wordpress.org/plugins/wp-api-menus/" target="_blank">WP API Menus</a> &#8211; 700+</li>
<li><a href="https://wordpress.org/plugins/wp-rest-api-log/" target="_blank">WP REST API Log</a> &#8211; 100+</li>
<li><a href="https://wordpress.org/plugins/wp-rest-api-sidebars/" target="_blank">WP REST API Sidebars</a> &#8211; less than 10</li>
<li><a href="https://wordpress.org/plugins/wprestapiextensions/" target="_blank">WPRestApiExtensions</a> &#8211; less than 10</li>
</ul>
<p>With a few notable exceptions, most of these plugins are hovering around a range of 10 &#8211; 100 active installs. These low numbers may indicate that plugin authors have not yet readily embraced building with the scaffolding that was merged into core in 4.4. However, some developers who have embraced building with the API have opted not to offer their plugins and themes for large scale distribution on WordPress.org.</p>
<p>&#8220;I think the plugin directory is the wrong place to look for adoption,&#8221; WordPress developer <a href="https://twitter.com/natewr" target="_blank">Nate Wright</a> said at the most recent meeting. &#8220;As a plugin author myself, I have to bend over backwards to ensure compatibility with tens of thousands of weird plugins and themes. Javascript itself is highly unstable in the ecosystem because of all the terrible code out there. I&#8217;ve used the API in client projects and am currently integrating it with some customizer tools I&#8217;m building. My publicly available plugins will be the last thing I&#8217;ll introduce to the API.&#8221;</p>
<p>Taylor Lovett, author of <a href="http://wptavern.com/custom-contact-forms-plugin-passes-1-million-downloads-on-wordpress-org" target="_blank">Custom Contact Forms</a>, believes that it&#8217;s important to get REST API-powered plugins into the hands of users, despite the support challenges of public distribution.</p>
<p>&#8220;It pushes plugin and theme developers to start working around API JavaScript conflicts now,&#8221; Lovett said. &#8220;There are many plugins that conflict with the API for a variety of reasons, one of the big ones being modifying Backbone.sync. Having plugins use it now is painful but will push people to start reporting those JS conflicts.&#8221;</p>
<p>Custom Contact Forms is currently the most widely-used plugin running the WP REST API with more than 70,000 installations, but the journey to using the current version has been fraught with challenges.</p>
<p>&#8220;There have been a number of backwards compatibility breaks with the JSON REST API project,&#8221; Lovett said. &#8220;If I had known going into it what would happen, I probably would have not used the API.</p>
<p>&#8220;I am still not completely comfortable with using the API because of the perceived instability of the project,&#8221; he said.&#8221;</p>
<p>Nevertheless, public distribution has brought Lovett considerable feedback from users which has been invaluable for his contributions to the REST API project.</p>
<p>&#8220;I’ve had a number of patches to the API that were discovered through Custom Contact Forms,&#8221; he said. &#8220;I’ve discovered some real edge cases while maintaining the API across more than 70K installations.&#8221;</p>
<p>Distributing his plugin on WordPress.org while the API went through significant changes was more challenging than Lovett anticipated, but through it the API has gained more exposure.</p>
<p>&#8220;The faster the API is exposed to people and people get comfortable using it, the sooner we will see some major strides in applications being built around WordPress,&#8221; he said.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 05 Feb 2016 23:06:20 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:39;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:22:"Matt: Chicken and Eggs";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=46021";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:39:"https://ma.tt/2016/02/chicken-and-eggs/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:5798:"<p><img class="alignright  wp-image-46028" src="http://i2.wp.com/ma.tt/files/2016/02/mometablues.jpeg?resize=245%2C376" alt="mometablues.jpeg" />I&#8217;ve been reading <a href="http://www.amazon.com/dp/1455501352/">Questlove&#8217;s <em>Mo&#8217; Meta Blues</em></a>, and it’s an incredible education. The book is helping me appreciate an era of music that inspired the era that inspires me &#8212; the music that drove the Roots, J Dilla, Fugees, D’Angelo, Common, Erykah Badu, Kendrick Lamar, and so many more to create what they have.</p>
<p>Chronologically, I’m in a chapter covering mid-90s hip-hop, which is full of conflict. There’s a tension alluded to in the book of the musicians that made it and those that didn’t: does increased radio play make songs popular? <a href="https://aeon.co/essays/why-repetition-can-turn-almost-anything-into-music">There&#8217;s some science that suggests yes</a>. Or is there something intrinsic to the record that puts it in that virtous loop of requests and airplay, the equivalent of usage and virality in a web product?</p>
<p>There&#8217;s a great ancedote in the book that I think is useful when thinking about products. All of the links are my addition, not in the original text.</p>
<blockquote><p>There was one moment during the recording of <a href="https://open.spotify.com/album/1ecv8bJajqX9E0EOX2g3eI"><em>Voodoo</em></a> that really brought this home. We were recording <a href="https://open.spotify.com/artist/6GEykX11lQqp92UVOQQCC7">DJ Premier&#8217;s</a> scratches for &#8220;<a href="https://open.spotify.com/track/3dOzhSPnBrRIcPyDUAqQYd">Devil&#8217;s Pie</a>,&#8221; and <a href="https://open.spotify.com/artist/3ZotbHeyVQKxQCPDJuQ4SU">Q-Tip</a> had just let the room to go work on something else, so there were four of us left there: Premier, <a href="https://open.spotify.com/artist/0IVcLMMbm05VIjnzPkGCyp">Dilla</a>, <a href="https://open.spotify.com/artist/336vr2M3Va0FjyvB55lJEd">D&#8217;Angelo</a>, and myself. During the break, Premier asked if anyone had any new shit to play for the group, and D&#8217;Angelo went for a cassette and played a bit of a new song, and the whole room just erupted in hooting. Then Dilla put on some new <a href="https://open.spotify.com/artist/1020a42xVklY6c56imNcaa">Slum Village</a> shit and it was the same thing: an explosion of excitement. Then Premier, who had started the whole thing, played an <a href="https://open.spotify.com/artist/1BH45DVSTeGBvcYXNCd67g">M.O.P.</a> song and some new <a href="https://open.spotify.com/artist/5cMgGlA1xGyeAB2ctYlRdZ">Gang Starr</a> material that he was working on for <a href="https://open.spotify.com/album/6U2LlflINhafc0e9vhs0lp"><em>The Ownerz</em></a>.</p>
<p>I was last at bat. All I had on me was a work tape for what would eventually become &#8220;<a href="https://open.spotify.com/track/7frJEBqz0olVg8sQpXD5BF">Double Trouble</a>&#8221; on <a href="https://open.spotify.com/album/0qbl8aNaCUOvX8HGsZYLfh"><em>Things Fall Apart</em></a>. It didn&#8217;t have finished vocals yet, didn&#8217;t have <a href="https://open.spotify.com/artist/0Mz5XE0kb1GBnbLQm2VbcO">Mos Def&#8217;s</a> verse. It was just a skeleton. I played it, and I will never forget the feeling that came over the room, including me. It wasn&#8217;t that they didn&#8217;t hoot and holler like they had for the other songs. They did. But they didn&#8217;t mean it. I know the move people resort to when they&#8217;re not quite into a song: they keep a straight stare on their face and bob their head a bit, not saying anything, not making eye contact. That&#8217;s the sign of death. That&#8217;s what they all did to me, and I felt humiliated. I was like Glenn Close in <em>Fatal Attraction</em>: <a href="https://www.youtube.com/watch?v=wzbVn9Xx3YM">I will not be ignored</a>! I went back into the studio that same night and gave that song a radical, extended facelift. I refused to sleep until I had that thing up and running.</p></blockquote>
<p>I love the idea of Questlove realizing the song was missing something, and going back to the booth to keep working on it until it resonated with his target audience. A song that doesn’t stand up on its own wouldn’t be any better when bundled as part of an album. (Or Samsung would have the most popular apps on Android.) Fans hear the care and quality of each track, and they become super-fans. The bands that break out weren’t bludgeoned into fan’s ears by radio play, they were pulled by these passionate few into a wider audience.</p>
<p>I love the mixtape culture that so many of today&#8217;s successful artists have come up through, and it is amplified online. <a href="https://en.wikipedia.org/wiki/Drake_discography#Mixtapes">Drake had three ever-improving mixtapes before his first album</a>. It harkens to a line from PG&#8217;s startup canon (in 2009!): <a href="http://paulgraham.com/13sentences.html">Better to make a few users love you than a lot ambivalent</a>.</p>
<p>There&#8217;s this tension in everything we produce. Where&#8217;s the line to tread between <a href="https://ma.tt/2010/11/one-point-oh/">1.0 is the loneliest</a> and a <a href="http://theleanstartup.com/principles">minimum viable product</a>? Or is it about <a href="http://www.huffingtonpost.com/brian-de-haaff/how-to-create-the-minimum_b_7652844.html">a minimum lovable product</a>? Are we building a car with no air conditioning or a car with no wheels?</p>
<p><img class="alignnone size-full wp-image-46059" src="http://i1.wp.com/ma.tt/files/2016/02/minimal-viable-product-henrik-kniberg.png?resize=604%2C389" alt="minimal-viable-product-henrik-kniberg.png" /></p>
<p>“Pivot” has become passé, but it’s much worse to assume that distribution will solve something core to your product that isn’t working.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 05 Feb 2016 22:42:20 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:40;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:61:"Post Status: WordPress REST API Round-table — Draft podcast";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:31:"https://poststatus.com/?p=20699";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:68:"https://poststatus.com/wordpress-rest-api-round-table-draft-podcast/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:1399:"<p>Welcome to the Post Status <a href="https://poststatus.com/category/draft">Draft podcast</a>, which you can find <a href="https://itunes.apple.com/us/podcast/post-status-draft-wordpress/id976403008">on iTunes</a>, <a href="http://www.stitcher.com/podcast/krogsgard/post-status-draft-wordpress-podcast">Stitcher</a>, and <a href="http://simplecast.fm/podcasts/1061/rss">via RSS</a> for your favorite podcatcher. Post Status Draft is hosted by Joe Hoyle &#8212; the CTO of Human Made &#8212; and Brian Krogsgard.</p>
<p>Joe and Brian were joined by Ryan McCue, the Lead Developer of the REST API, Daniel Bachhuber, a contributing developer to the REST API, and K.Adam White, Aaron Jorbin, and Jack Lenox — each with unique experiences using the REST API. They discussed the talks from A Day of REST, but also about the impact of the new API more broadly as well.</p>
<p>If you’re at all interested in the REST API, this is an excellent round table to listen to.</p>
<a href="https://audio.simplecast.com/25895.mp3">https://audio.simplecast.com/25895.mp3</a>
<p><a href="http://audio.simplecast.com/25895.mp3">Direct download</a></p>
<h3>Links</h3>
<ul>
<li><a href="https://feelingrestful.com/">A Day of Rest</a></li>
<li><a href="https://poststatus.com/a-day-of-rest-review/">Post Status summary of the conference and links to slides</a></li>
</ul>
<p><em>Photo credit: Aaron Jorbin</em></p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 05 Feb 2016 18:34:32 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:14:"Katie Richards";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:41;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:59:"WPTavern: WP REST API Delayed, Contributors Facing Gridlock";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51204";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:68:"http://wptavern.com/wp-rest-api-delayed-contributors-facing-gridlock";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:6612:"<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/04/wp-rest-api.jpg" rel="attachment wp-att-43000"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/04/wp-rest-api.jpg?resize=1025%2C469" alt="wp-rest-api" class="aligncenter size-full wp-image-43000" /></a></p>
<p>The WP REST API team <a href="https://wordpress.slack.com/archives/core-restapi/p1454626846001168" target="_blank">met yesterday in the #core-restapi Slack channel</a> to discuss the status of the existing post, term, user, and comment endpoints. There are a few outstanding issues with these four core objects, which the team wants to tackle via a feature plugin approach instead of holding the API back from merge. These outstanding items include things like password-protected posts, autosaves and post previews, and meta handling.</p>
<p>&#8220;For now, we&#8217;re not going to support them, and will be working on them in a separate feature plugin instead,&#8221; WP REST API project lead Ryan McCue <a href="https://wordpress.slack.com/archives/core-restapi/p1454628784001310" target="_blank">said</a>. &#8220;Again, this will be an enhancement to the API in the future, and doesn&#8217;t block compatibility here.&#8221;</p>
<p>In September 2015, McCue and contributors outlined <a href="https://make.wordpress.org/core/2015/09/21/wp-rest-api-merge-proposal/" target="_blank">a merge plan for the REST API</a> which brought the infrastructure into the 4.4 release with the endpoints on deck to follow one release later in 4.5. Contributors to the REST API believe that the project is still on track for this goal.</p>
<p>&#8220;Our proposal is that we ​merge the four core objects​ in the REST API with full read, create, update, delete support, with the more peripheral features to come ​when they&#8217;re ready,&#8221; McCue said.</p>
<p>Several WordPress contributors, including project lead Matt Mullenweg, voiced concerns about the REST API shipping without the features that have been temporarily spun out.</p>
<p>&#8220;I know it’s a minority opinion, but I would be pretty skeptical of merging a partial API into core,&#8221; Mullenweg said. &#8220;I think it would do a lot more damage than benefit.&#8221;</p>
<p>McCue contended that the team has been working towards shipping a product that can be progressively enhanced.</p>
<p>&#8220;The API is specifically structured around progressive enhancement, which is a key difference from many APIs,&#8221; he said. &#8220;Allowing clients to detect features and support them when they&#8217;re ready allows us huge flexibility.&#8221;</p>
<h3>Does the WP REST API Need Full wp-admin Coverage?</h3>
<p>Aaron Jorbin noted that while the four core object types allow for some innovative themes and content editors, they do not yet allow for full wp-admin replacements. This particular point was a deal breaker for several contributors attending the meeting.</p>
<p>&#8220;The cases where the current API covers today aren’t terribly interesting because they’re not really enabling something that was impossible to do before,&#8221; Mullenweg said. &#8220;It’s just a different approach to doing something that was already possible before. I don’t even think we have XML-RPC parity of feature support yet.</p>
<p>&#8220;I wouldn’t have included REST examples in the SoTW, or encouraged plugins to use the scaffolding, or even let the scaffolding in the last release, if I didn’t think it was the most promising thing out there right now,&#8221; he said. &#8220;But uptake definitely feels slower than I would have expected. It’s taken so long to get to this point, if we don’t pick up the pace, it could be another year or two before we get full wp-admin coverage.&#8221;</p>
<p>Despite the fact that the <a href="http://wptavern.com/a-day-of-rest-conference-successful-81-would-attend-again" target="_blank">WP REST API recently had its own conference</a> dedicated to it, most of the people who are building with it are those who are also contributors on the project. Adoption is not yet widespread, but this could be due to the fact that many developers don&#8217;t want to build on it until the core endpoints are officially merged.</p>
<p>&#8220;We&#8217;ve got a bit of a chicken and egg: without core adoption, potential API consumers are hesitant to take the plunge, but without adoption it won&#8217;t be tested sufficiently to be merged,&#8221; REST API contributor K. Adam White said.</p>
<p>&#8220;From a project point of view I’m not really excited about shipping an API that has &#8216;some assembly required,&#8217; vs making the core release paired with interesting non-trivial killer apps (mobile apps, something calypso-like, big plugins using / supporting it),&#8221; Mullenweg said. &#8220;To me a complete API is one that covers everything that’s possible within wp-admin. A subset of that is a partial API.&#8221;</p>
<p>Multiple contributors on the REST API project, however, agreed that shipping with full admin replacement capability is unrealistic, especially after Mullenweg <a href="https://wordpress.slack.com/archives/core-restapi/p1454632381001548" target="_blank">confirmed</a> that it should support everything possible in the admin, including the file editor.</p>
<p>&#8220;We&#8217;re significantly more interested in getting read/write access to core types, so that we can interact with WP from a host of other platforms,&#8221; K. Adam White said. &#8220;I think that pushing everything off until it&#8217;s &#8216;Calpyso ready&#8217; blocks myriad use cases before they can get off the ground.&#8221;</p>
<p>In response, Mullenweg asked why WordPress should support something in its web interface that isn&#8217;t supported through its official API. At the conclusion of the two-hour meeting he summarized his final proposal: &#8220;No partial endpoints in core. Let’s design a complete API, not half-do it and foist it on millions of sites,&#8221; he said.</p>
<p>This is a critical juncture for the WP REST API project. While most contributors seemed agreed on further iterating the existing endpoints and ramping up usage before merging them into core, attendees remained divided about the need to have full wp-admin coverage prior to merge.</p>
<p>WP REST API team members are squarely committed to iterating separately on peripheral features, but another contingent of WordPress contributors who joined the meeting yesterday are adamant about seeing a more polished API with better support for the admin. A plan forward has not yet emerged.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 05 Feb 2016 06:59:23 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:42;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:68:"WPTavern: Pantheon Launches Community Resource for Scaling WordPress";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51157";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:78:"http://wptavern.com/pantheon-launches-community-resource-for-scaling-wordpress";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:6075:"<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/wordpress-at-scale.png" rel="attachment wp-att-51196"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/wordpress-at-scale.png?resize=1025%2C406" alt="wordpress-at-scale" class="aligncenter size-full wp-image-51196" /></a></p>
<p>When people ask the question, &#8220;Can WordPress scale?&#8221; they are often pointed to some of the largest websites running on WordPress, such as Time Magazine, TechCrunch, NBC Sports, Playstation, the New York Observer, and others. But how do you get there and what does it take to deliver WordPress at scale to millions of visitors?</p>
<p>Yesterday <a href="https://pantheon.io/" target="_blank">Pantheon</a> launched a new resource to answer this question with a knowledge base of best practices from experienced developers. <a href="https://www.scalewp.io/" target="_blank">WordPress at Scale</a> is a community-driven project that aims to educate site owners and developers about scalable website infrastructure and optimizations that many large scale sites employ.</p>
<p>The site&#8217;s content is managed via a <a href="https://github.com/pantheon-systems/wordpress-at-scale" target="_blank">GitHub repository</a> where anyone can <a href="https://github.com/pantheon-systems/wordpress-at-scale/blob/master/CONTRIBUTING.md" target="_blank">contribute</a>. Topics currently range from elastic architecture to object caching to recommended development workflows for scaling.</p>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/wordpress-at-scale-links.png" rel="attachment wp-att-51198"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/wordpress-at-scale-links.png?resize=1025%2C521" alt="wordpress-at-scale-links" class="aligncenter size-full wp-image-51198" /></a></p>
<h3>Pantheon Aims to Make Scalability and Performance Commonly Understood Best Practices</h3>
<p>&#8220;We work with a lot of web agencies and dev shops, and we’ve also spent a lot of time working within the community at WordCamps over the past 18 months,&#8221; Pantheon co-founder Josh Koenig said. &#8220;It definitely seems like there’s a need for go-to resources when it comes to questions about scale. We wanted to set a serious goal for ourselves to make an impact in the WordPress ecosystem.&#8221;</p>
<p>While you can find scattered tutorials around the web about how to scale WordPress, this collaborative community effort is one of the first to aggregate resources into a collection. Knowledge of scalability doesn&#8217;t come easily and isn&#8217;t always shared with the community.</p>
<p>&#8220;Very often learnings about scalability don’t make it out of projects or companies because they can be hard to generalize (or because people think there’s proprietary value in them),&#8221; Koenig said. &#8220;Our opinion — and this is based on our experience in the Drupal project with our pre-Pantheon work on PressFlow and ​<a href="https://www.chapterthree.com/blog/project-mercury-pre-configured-drupalvarnish-ec2-ami" target="_blank">Mercury</a> — is that there’s ​vastly more value to be had for everyone in making scalability and performance commonly understood best practices.&#8221;</p>
<p>In order to accomplish this goal, Pantheon set up the WordPress at Scale microsite as a community project.</p>
<p>&#8220;We wanted this to be a real contribution,&#8221; Koenig said. &#8220;Since we’re a platform provider, doing it &#8216;in house&#8217; would mean it’s ultimately just a marketing piece.</p>
<p>&#8220;I’m clearly being up front about the fact that we hope this site has marketing ​value​ to us, but that value should (rightly so) be proportional to how actually useful it is to the community,&#8221; he said. &#8220;We’d never get very far if this was just a Pantheon thing.&#8221;</p>
<p>Weston Ruter, CTO at <a href="https://xwp.co/" target="_blank">XWP</a> and contributor to the WordPress at Scale site, agrees on the value of having the site set up as a community project.</p>
<p>&#8220;A community-driven resource like this is important because there is a lot to know, and there is a lot of experience to draw on from the community,&#8221; Ruter said. &#8220;No one agency or consultant has all of the possible tips and tricks for scaling WP, so having a collaborative resource to draw that information together is very helpful to keep it from being isolated in our respective silos.&#8221;</p>
<p>Although scaling varies widely based on the type of content being served and user activity on the site, many aspects of optimization are fairly straightforward and can be easily applied as needed.</p>
<p>&#8220;I suppose scaling WordPress is more a formula than an art,&#8221; Ruter said when asked which it resembles more. &#8220;If there is art to it, it is having an eye for designing the architecture to take into account the specifics of the site being scaled. Different sites have different techniques required for scaling. A brochure site with seldom-changing content will be cached very differently than a social network site.&#8221;</p>
<p>WordPress at Scale is just a starting point for what Koenig hopes will become a comprehensive resource authored by many contributors. It&#8217;s currently missing several topics that he wants to cover in more detail.</p>
<p>&#8220;There are a couple good issues in the queue already with specific technical topics I’d love to cover: fragment caching, and ESI,&#8221; he said. &#8220;We will definitely be getting into those and other topics with more specificity, especially as we can leverage more contributions from the community.</p>
<p>&#8220;Once we get the content a little more built-out, I want to create a generic presentation that anyone can use to cover this topic,&#8221; Koenig said. &#8220;Whether that’s giving a talk at a meetup, or pitching WordPress as a solution to a client, having some good quality materials will really help get the message out there.&#8221;</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 05 Feb 2016 00:58:04 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:43;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:104:"Dougal Campbell: Underscores Components – Custom starter themes for faster WordPress theme development";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:34:"http://dougal.gunters.org/?p=81112";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:126:"http://dougal.gunters.org/blog/2016/02/04/underscores-components-custom-starter-themes-for-faster-wordpress-theme-development/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:658:"<p><i>&#8220;Components is a library of shareable, reusable patterns for WordPress themes. Instead of starting from scratch, mix and match from a collection of pre-made components to build your own custom starter theme.&#8221; Online tool from Automattic which can generate a variety of starter themes based on Underscores and Components, ready for you to customize.</i></p>
<p><a href="http://components.underscores.me/">Underscores Components – Custom starter themes for faster WordPress theme development</a></p>
<div class="yarpp-related-rss yarpp-related-none">
<img src="http://yarpp.org/pixels/5db43ee24c4f1e1d0e45d08cc91b0130" alt="YARPP" />
</div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 04 Feb 2016 19:25:05 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:15:"Dougal Campbell";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:44;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:87:"WPTavern: Shiny Updates Version 2 Adds Functionality for Themes and Bulk Plugin Updates";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51108";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:97:"http://wptavern.com/shiny-updates-version-2-adds-functionality-for-themes-and-bulk-plugin-updates";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:4981:"<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/shiny-updates.png" rel="attachment wp-att-51117"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2016/02/shiny-updates.png?resize=1025%2C382" alt="shiny-updates" class="aligncenter size-full wp-image-51117" /></a></p>
<p>With all of the design improvements to the plugin and theme screens in recent WordPress releases, the experience of updating extensions started to feel clunky and disjointed. The <a href="https://wordpress.org/plugins/shiny-updates/" target="_blank">Shiny Updates</a> feature plugin was created to hide what project contributors refer to as the &#8220;The Bleak Screen of Sadness.”</p>
<p>WordPress users received a small taste of shiny updates when the feature was applied to plugin updates in the 4.2 release, but themes still lag behind. For example, when you update a theme, WordPress lets you know exactly how hard it is working behind the scenes to make that happen:</p>
<blockquote><p>Downloading update from https://downloads.wordpress.org/theme/cover.1.6.4.zip…</p>
<p>Unpacking the update…</p>
<p>Installing the latest version…</p>
<p>Removing the old version of the theme…</p>
<p>Theme updated successfully.</p></blockquote>
<p>Shiny Updates hides the ugly parts of updates in favor of making the process appear more effortless. Instead of taking the user to a new screen, updates happen in the background without the need to refresh the page.</p>
<p>The project is currently a <a href="https://make.wordpress.org/core/features-as-plugins/" target="_blank">feature plugin</a> in development for WordPress core, led by Konstantin Obenland. In a recent <a href="https://make.wordpress.org/core/2016/01/27/shiny-updates-v2/" target="_blank">status update</a> Obenland said that the new version of the plugin aims to extend shiny updates to all aspects of updates, installs, and deletes for plugins and themes in WordPress.</p>
<p>Version 2 of the plugin currently offers the following:</p>
<ul>
<li>Deleting single plugins, bulk updating, and bulk deleting plugins from the plugin page.</li>
<li>Shiny plugin installs from the plugin install screen: multiple actions can be queued up.</li>
<li>Shiny theme installs, updates, and deletes, multiple queue-able, including multisite.
</li>
</ul>
<p>Development for the Shiny Updates project is happening on GitHub where the team is <a href="https://github.com/obenland/shiny-updates/issues" target="_blank">collaborating on design and UX improvements</a>. One of their goals, according to the most recent update, is to refine the user experience by &#8220;improving perceived performance and limiting confusing notifications.&#8221;</p>
<h3>Update All the Things</h3>
<p>WordPress&#8217; update process is somewhat fragmented when there are multiple updates available for core, plugins, and themes on the <em>update-core.php</em> screen. Shiny Updates contributors are exploring <a href="https://github.com/obenland/shiny-updates/issues/5" target="_blank">a button that would &#8220;update all the things&#8221;</a> in one pass. The dedicated issue on GitHub has 28 comments of discussion and design mockups for what an &#8220;<em>Update All</em>&#8221; process might look like.</p>
<p>In addition to adding an <em>Update All</em> functionality, contributors are also working on the following issues:</p>
<ul>
<li>Development for <a href="https://github.com/obenland/shiny-updates/issues/7" target="_blank">bulk plugin action notifications</a></li>
<li>Design for <a href="https://github.com/obenland/shiny-updates/issues/54" target="_blank">updating themes from the theme card</a> (on top of from details modal)</li>
<li>Another round of user tests to get more feedback on the new flows</li>
</ul>
<p>When asked whether Shiny Updates will be ready for inclusion in the upcoming 4.5 release, Obenland said, &#8220;Even though we’re fairly far into what we want to accomplish with v2, there are still a good number of tasks outstanding.</p>
<p>&#8220;I’m going to reach out to the a11y group for a review soon and have already gotten in touch with a few core committers to have the JS part reviewed,&#8221; he said. &#8220;We’re also in the process of running more user tests for the new flows. So the decision deadline next week just comes a little too early.&#8221;</p>
<p>At this time, WordPress 4.6 is a more likely target for including Shiny Updates in core. If you want to assist the team in getting it ready, install the feature plugin from the official directory or via the <a href="https://wordpress.org/plugins/wordpress-beta-tester/" target="_blank">Beta Tester</a> plugin. Testing version 2 should include both plugin and theme installation, update, and delete actions on both single and multisite installs. Testers can report any bugs to the project&#8217;s GitHub <a href="https://github.com/obenland/shiny-updates/issues" target="_blank">issues queue</a>.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 04 Feb 2016 00:56:58 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:45;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:63:"Post Status: The first WordPress REST API conference, in review";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:31:"https://poststatus.com/?p=20387";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:44:"https://poststatus.com/a-day-of-rest-review/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:24660:"<p>January 28th and 29th of 2016 marked the first ever <a href="https://feelingrestful.com/">A Day of REST</a>, a conference devoted to the WordPress REST API. It&#8217;s also, to my knowledge, the first ever conference completely about a single feature of WordPress.</p>
<p>Put on by the <a href="https://hmn.md/">Human Made</a> team, there were definitely risks: maybe not enough people would sign up, maybe the content would be too dense, or not dense enough for the audience that showed, maybe the API wouldn&#8217;t be in core yet, and more. Yet, none of these things happened, and the conference was a success.</p>
<p>I had the privilege to cover the event as the media partner, and I had an excellent time. It wasn&#8217;t a small conference, with over 220 attendees, but it was intimate, utilizing a single track setup, and had a small hack day reserved for 40 people.</p>
<p><img class="aligncenter size-large wp-image-20447" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-20-752x501.jpg" alt="ador-poststatus-20" width="752" height="501" /></p>
<p>It was also a bit of a risk to host the first A Day of REST in London, where it was quite accessible to the European community, but out of reach for much of the American market. Nonetheless, those of us that came from the US, Asia, and elsewhere were able to make mini-vacations of the conference, and the UK and broader European community made a great showing; the event nearly sold out.</p>
<h3>Why does the WordPress REST API merit its own conference?</h3>
<p>The <a href="http://wp-api.org/">WordPress REST API</a> drastically changes the landscape for WordPress development. Now, WordPress can be the data store, while other technologies can (but aren&#8217;t required to, of course) take up pretty much every other aspect of the website. The front end and the back end components of a website can utilize completely custom web stacks, while the data is stored in WordPress.</p>
<p>The API can be used for modules within existing sites built traditionally with WordPress, or as the engine for entire external web apps. There are so many potential avenues to take WordPress with the REST API, that exploring just a few of them merits a conference like this. In fact, after having seen the conference, I feel that we just scratched the surface. That said, it was an excellent day, where I learned a lot. Here&#8217;s an overview of each speaker, and be on the lookout for videos as well, which will be hosted here on Post Status.</p>
<h3>Introduction to the WordPress REST API</h3>
<p>At A Day of REST, we were guided from the beginning, with an introduction to APIs within WordPress, and the role the REST API will play, by WordPress REST API Lead Developer Ryan McCue.</p>
<div id="attachment_20461" class="wp-caption aligncenter"><img class="size-large wp-image-20461" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-6-752x501.jpg" alt="Ryan McCue" width="752" height="501" /><p class="wp-caption-text">Ryan McCue</p></div>
<ul>
<li><a href="https://speakerdeck.com/rmccue/a-day-of-rest-2016">Ryan&#8217;s slides</a></li>
<li><a href="https://twitter.com/rmccue">Ryan on Twitter</a></li>
<li><a href="http://ryanmccue.info/">Ryan&#8217;s website</a></li>
</ul>
<h3>The Building Blocks of a REST API project</h3>
<p>Next, Joe Hoyle &#8212; a core member of the REST API team, Human Made CTO, and my co-host on the Draft podcast &#8212; walked us through the building blocks of a REST API project.</p>
<div id="attachment_20457" class="wp-caption aligncenter"><img class="wp-image-20457 size-large" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-10-752x501.jpg" alt="ador-poststatus-10" width="752" height="501" /><p class="wp-caption-text">Joe Hoyle</p></div>
<ul>
<li><a href="https://feelingrestful.com/speakers/89">Joe&#8217;s slides</a></li>
<li><a href="https://twitter.com/joe_hoyle">Joe on Twitter</a></li>
<li><a href="http://joehoyle.co.uk/">Joe&#8217;s website</a></li>
</ul>
<h3>Unlock the Potential of the WP REST API at the Command Line</h3>
<p>Next, Daniel Bachhuber talked about creating a more RESTful wp-cli. The wp-cli project is a powerful suite of tools, but much of the functionality is replicated with the REST API. He&#8217;s in the middle of working through utilizing the REST API for wp-cli functionality.</p>
<div id="attachment_20449" class="wp-caption aligncenter"><img class="size-large wp-image-20449" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-18-752x501.jpg" alt="Daniel Bachhuber" width="752" height="501" /><p class="wp-caption-text">Daniel Bachhuber</p></div>
<ul>
<li><a href="http://blog.handbuilt.co/2016/01/28/feelingrestful-a-more-restful-wp-cli/">Daniel&#8217;s slides</a></li>
<li><a href="https://twitter.com/danielbachhuber">Daniel on Twitter</a></li>
<li><a href="http://danielbachhuber.com/">Daniel&#8217;s website</a></li>
</ul>
<h3>There and Back Again: A Developer&#8217;s Tale</h3>
<p>Jack Lenox spoke about using the WordPress REST API in the context of single page application development, and WordPress theming.</p>
<div id="attachment_20446" class="wp-caption aligncenter"><img class="size-large wp-image-20446" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-21-752x501.jpg" alt="Jack Lenox" width="752" height="501" /><p class="wp-caption-text">Jack Lenox</p></div>
<ul>
<li><a href="https://speakerdeck.com/jacklenox/there-and-back-again-a-developers-tale">Jack&#8217;s slides</a></li>
<li><a href="http://github.com/jacklenox/there-and-back-again">Corresponding Github</a></li>
<li><a href="https://twitter.com/jacklenox">Jack on Twitter</a></li>
<li><a href="http://jacklenox.com/">Jack&#8217;s website</a></li>
</ul>
<h3>Building Calypso-like Applications with the WP REST API</h3>
<p>Nikolay Bachiyski was instrumental to the <a href="https://poststatus.com/wordpress-com-mac-app/">WordPress.com Calypso project</a>, and in his talk at A Day of REST, he discussed Automattic&#8217;s thinking behind many of the technologies that were used, and some of what they learned.</p>
<div id="attachment_20442" class="wp-caption aligncenter"><img class="wp-image-20442 size-large" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-25-752x501.jpg" alt="ador-poststatus-25" width="752" height="501" /><p class="wp-caption-text">Nikolay Bachiyski</p></div>
<ul>
<li><a href="https://speakerdeck.com/nb/building-calypso-like-applications">Nikolay&#8217;s slides</a></li>
<li><a href="https://developer.wordpress.com/calypso/">Calypso</a></li>
<li><a href="https://twitter.com/nikolayb">Nikolay on Twitter</a></li>
<li><a href="http://extrapolate.me/">Nikolay&#8217;s website</a></li>
</ul>
<h3>Pay No Attention to that WordPress Behind Your Application</h3>
<p>With perhaps the most fascinating topic of the day, K. Adam White discussed using WordPress in some quite strange ways, like in concert with Ghost, for instance. All of the talks are great to watch, but if you only watch one, I think this would be the one I&#8217;d choose.</p>
<div id="attachment_20437" class="wp-caption aligncenter"><img class="size-large wp-image-20437" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-30-752x501.jpg" alt="K. Adam White" width="752" height="501" /><p class="wp-caption-text">K. Adam White</p></div>
<p><a href="http://kadamwhite.github.io/talks/2016/wp-node-feelingrestful/#/">K. Adam&#8217;s Slides</a></p>
<p><a href="https://twitter.com/kadamwhite">K. Adam on Twitter</a></p>
<p><a href="http://www.kadamwhite.com/">K. Adam&#8217;s website</a></p>
<p><a href="https://github.com/kadamwhite/wordpress-rest-api">A JavaScript client for the WP REST API</a></p>
<h3>Should I Use the WordPress REST API? Ask WIRED&#8217;s, &#8220;Ask a Flowchart&#8221;</h3>
<p>Kathleen Vignos is using the WordPress REST API at WIRED, where she&#8217;s the Director of Engineering. In this talk, she walks through how they decide when and where to use the REST API. They&#8217;ve gone through this process for considering the API for Latest Posts widgets, related post fallbacks, for Apple News and Slack integrations, and more.</p>
<div id="attachment_20432" class="wp-caption aligncenter"><img class="wp-image-20432 size-large" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-35-752x501.jpg" alt="ador-poststatus-35" width="752" height="501" /><p class="wp-caption-text">Kathleen Vignos</p></div>
<p><a href="http://www.slideshare.net/kvignos/wired-and-the-wp-rest-api">Kathleen&#8217;s Slides</a></p>
<p><a href="https://twitter.com/kathleencodes">Kathleen on Twitter</a></p>
<p><a href="http://wired.com">Kathleen&#8217;s website</a></p>
<h3>The Live Coverage Platform at The New York Times</h3>
<p>Scott Taylor &#8212; WordPress core committer and engineer at The New York Times &#8212; showed us how they use the WordPress REST API to power their Live Coverage Platform at The Times. It&#8217;s truly both WordPress and the API at scale, and he&#8217;s careful in his talk to discuss some of the issues that need to be resolved for WordPress to be the best choice for such applications.</p>
<div id="attachment_20428" class="wp-caption aligncenter"><img class="wp-image-20428 size-large" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-39-752x501.jpg" alt="ador-poststatus-39" width="752" height="501" /><p class="wp-caption-text">Scott Taylor</p></div>
<p><a href="http://www.slideshare.net/ScottTaylor1/a-day-of-rest">Scott&#8217;s slides</a></p>
<p><a href="https://twitter.com/wonderboymusic">Scott on Twitter</a></p>
<p><a href="http://scotty-t.com/">Scott&#8217;s website</a></p>
<h3>Hack Day</h3>
<div id="attachment_20424" class="wp-caption aligncenter"><img class="size-large wp-image-20424" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-43-752x501.jpg" alt="Hack day" width="752" height="501" /><p class="wp-caption-text">Hack day</p></div>
<p>The Hack Day was small, but productive. Around 40 people got together at the Mozilla offices and knocked out tickets, resolved longstanding issues, wrote docs, and updated the <a href="http://wp-api.org">REST API website</a> to officially deprecate version 1.x documentation.</p>
<h3>More pictures from A Day of REST</h3>
<p>Here are some more pictures I took of speakers, the audience, and the venue at A Day of REST. I really enjoyed this venue, which was exactly what I&#8217;d imagine an old and quaint English venue would look like.</p>

<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-11/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-11-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-11" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-2/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-2-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-2" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-1/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-1-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-1" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-3/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-3-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-3" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-4/"><img width="150" height="95" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-4-150x95.jpg" class="attachment-thumbnail size-thumbnail" alt="Jenny Wong" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-5/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-5-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-5" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-6/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-6-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Ryan McCue" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-7/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-7-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Tom Willmot" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-8/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-8-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-8" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-14/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-14-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-14" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-9/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-9-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Joe Hoyle" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-10/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-10-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-10" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-13/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-13-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-13" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-15/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-15-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-15" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-17/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-17-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-17" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-18/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-18-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Daniel Bachhuber" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-19/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-19-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-19" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-20/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-20-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-20" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-21/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-21-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Jack Lenox" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-22/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-22-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-22" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-12/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-12-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-12" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-23/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-23-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="Jack Lenox" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-24/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-24-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Aaron Jorbin, MC" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-25/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-25-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-25" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-26/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-26-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Nikolay Bachiyski" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-27/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-27-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-27" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-28/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-28-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-28" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-29/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-29-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="K. Adam trolling" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-30/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-30-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="K. Adam White" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-31/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-31-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="Sponsors & Schedule" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-16/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-16-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-16" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-32/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-32-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Afternoon snacks" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-33/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-33-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Coffee" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-34/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-34-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Room for REST" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-35/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-35-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-35" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-36/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-36-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="Kathleen Vignos" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-37/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-37-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Mike Little" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-38/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-38-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="Scott Taylor" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-39/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-39-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-39" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-40/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-40-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-40" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-41/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-41-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Even more hack day" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-42/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-42-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="More hack day" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-43/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-43-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Hack day" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-44/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-44-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Petya" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-45/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-45-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="ador-poststatus-45" /></a>
<a href="https://poststatus.com/a-day-of-rest-review/ador-poststatus-46/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2016/02/ador-poststatus-46-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="Mozilla space" /></a>

<h3>The future of A Day of REST</h3>
<p>Planning is already starting around what future WordPress REST API events may look like. Human Made is talking to potential partners (and in disclosure, I&#8217;m in these discussions as well) about potential events in the United States and Asia so far.</p>
<p>Feedback from A Day of REST was quite positive: more than 80% of attendees would definitely attend again, and nobody said they would definitely <em>not</em> attend again. For many, the depth of the talks and willingness for the conference to go deep on one WordPress feature was welcome, especially because this was an advanced audience of mostly developers, and not all just WordPress developers.</p>
<p>More than 20% of attendees consider themselves primarily JavaScript developers. I imagine the other 80% are all seeking to learn more about JavaScript, especially in context of its uses with the WordPress REST API, and considering Matt Mullenweg&#8217;s challenge during the <a href="https://poststatus.com/state-of-the-word-2015/">most recent State of the Word</a>.</p>
<p>I imagine we will also be seeing stronger focus on the REST API at larger WordCamps. I could imagine simultaneous developer tracks and REST API tracks. And third party events like A Day of REST can go even deeper, with workshops and smaller group teaching, versus only speaker-driven events.</p>
<p>I love seeing people get together and learn. A Day of REST was productive, educational, and fun. I look forward to potential future iterations of this event, and getting back to Europe for a proper vacation (this was my first trip there!). Keep an eye out on Post Status for the official videos, and a round table podcast where I talked to many of the speakers about the WordPress REST API.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 03 Feb 2016 22:45:33 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:15:"Brian Krogsgard";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:46;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:69:"WPTavern: A Day of REST Conference Successful, 81% Would Attend Again";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=51127";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:77:"http://wptavern.com/a-day-of-rest-conference-successful-81-would-attend-again";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:5606:"<a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/a-day-of-rest.jpeg" rel="attachment wp-att-51128"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/02/a-day-of-rest.jpeg?resize=1000%2C531" alt="photo credit: Noel Tock" class="size-full wp-image-51128" /></a>photo credit: Noel Tock
<p>Last weekend more than 200 developers gathered in London for a niche conference devoted to the WordPress REST API. <a href="https://feelingrestful.com/" target="_blank">A Day of REST</a> featured speakers from around the world who are building applications with the REST API at companies like WIRED, The New York Times, Fusion, Automattic, and Bocoup.</p>
<p>&#8220;The conference was a fantastic proof of just how popular the REST API project is, and it was super encouraging to see everyone there to hear about it,&#8221; Ryan McCue told the Tavern. McCue, a co-lead on the WP REST API project, said he enjoyed the opportunity to connect with the many developers who are already using the API in production. He also said he was surprised by some of the the speakers&#8217; unconventional uses of the API, including using it to supply content from WordPress to <a href="https://ghost.org/" target="_blank">Ghost</a> themes.</p>
<p>&#8220;The contributor day was wildly successful as we took a feature plugin approach to some long-standing issues,&#8221; McCue said. &#8220;We essentially split the room into six and let every team handle their tasks with fresh eyes. A huge amount of progress was made, and I&#8217;m hoping that this greater ownership of the contributions will encourage contributors to remain involved well into the future.&#8221;</p>
<p>McCue said three quarters of the WP REST API leadership team had the opportunity to meet in person and work through nearly all of their outstanding discussion items to get unblocked for future work.</p>
<p>In addition to being a boon to the REST API project, the conference was inspirational for developers who appreciated the in-depth technical focus of the event.</p>
<p>&#8220;I think the most exciting point for me was the realization that the potential of decoupling WordPress from its codebase is far more complete and powerful than I had previously thought,&#8221; said Adam Hollister, an engineer who <a href="https://www.pragmatic-web.co.uk/a-day-of-rest/" target="_blank">attended with colleagues from Pragmatic</a>, a UK-based development agency. &#8220;I’m looking forward to building something with WordPress data in a way that would not have been possible until now.&#8221;</p>
<h3>Human Made Embraces Challenge of Hosting Conferences Curated for Developers</h3>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/a-day-of-rest-jack-lennox.jpeg" rel="attachment wp-att-51148"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/02/a-day-of-rest-jack-lennox.jpeg?resize=956%2C535" alt="a-day-of-rest-jack-lennox" class="aligncenter size-full wp-image-51148" /></a></p>
<p>As many WordCamps are becoming more user-focused, developers are looking for events where they can expand their skills and learn from others in the industry. According to Day of REST stats from co-organizer Petya Raykovska, 41% of the 221 attendees were WordPress developers, 26% PHP developers, 21% JavaScript developers, and 12% other attendees (designers, product managers, and business owners).</p>
<p>&#8220;It’s more challenging to organize a niche conference than it is to organize a WordCamp,&#8221; Raykovska said. &#8220;From the start we wanted to throw a very high quality event, especially curated for developers who want to improve the level of their work. That meant a very precise speaker selection for that particular audience.&#8221;</p>
<p>The organization team at <a href="https://hmn.md/" target="_blank">Human Made</a> wanted the conference to teach and inspire at the same time. Raykovska said that balancing the schedule to achieve this goal was one of their biggest challenges.</p>
<p>&#8220;At the end we are incredibly proud of the lineup of speakers we had and the feedback we’ve been getting from attendees showed that people loved our speakers,&#8221; she said. According to a post-event survey, 81% of the attendees said they would definitely come back to the next event.</p>
<p>&#8220;We also learned something very important &#8211; WordPress developers are eager to learn and are willing to invest to get better, especially with the upcoming challenges presented by the REST API,&#8221; Raykovska said.</p>
<p>&#8220;They want to learn about specific JS libraries and frameworks, application development, creating APIs, server setups for decoupled WordPress and many more advanced development topics,&#8221; she said. &#8220;There is definitely a niche for high quality development conferences to help WordPress developers expand their knowledge base and skills.&#8221;</p>
<p>Human Made is in the early stages of planning a second Day of REST conference that will likely be hosted outside of Europe.</p>
<p>&#8220;We would love to continue organizing advanced development events to help the industry grow,&#8221; Raykovska said. &#8220;We’d like to organize A Day of REST in the US and in Asia. Even though it’s too early for specific dates, the processes are already in motion.&#8221;</p>
<p>For those unable to attend this past weekend, <a href="https://feelingrestful.com/news/after-a-day-of-rest-slides-resources-and-more/" target="_blank">all the slides from the presentations</a> are now available and videos are coming soon.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 03 Feb 2016 20:57:51 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:47;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:21:"Matt: Unsplash Photos";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=45934";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:38:"https://ma.tt/2016/02/unsplash-photos/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:536:"<p><img class="alignnone size-full wp-image-45940" src="http://i1.wp.com/ma.tt/files/2016/01/photo-1444760134166-9b8f7d0fc038.jpeg?resize=604%2C401" alt="photo-1444760134166-9b8f7d0fc038.jpeg" /></p>
<p>Unsplash is a collection of Creative Commons Zero licensed photos that area really amazing, and <a href="https://unsplash.com/collections/curated/99">I curated a collection of ten images for them which you can check out here</a>. The hard part was trying to pick only ten &#8212; there were so many beautiful and stunning images.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 02 Feb 2016 19:17:51 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:48;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:41:"Matt: Getting a Job After Coding Bootcamp";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:22:"https://ma.tt/?p=45825";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:58:"https://ma.tt/2016/02/getting-a-job-after-coding-bootcamp/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2282:"<p>The past 6-8 months I&#8217;ve been seeing a new type of person applying for <a href="https://automattic.com/work-with-us/">Automattic&#8217;s engineering positions</a> that I hadn&#8217;t seen before, and I think it&#8217;s very interesting and promising but missing one key component.</p>
<p>These applications usually have great cover letters and well-put-together resumes, which is a good sign that people put some thought into it and had someone spot-check it before sending it in. But where most people list prior jobs, these applications (and LinkedIn profiles) list projects. When you dig into prior jobs listed, if there are any, they&#8217;re typically in a completely unrelated field like medicine or finance, and under education they list one of these new bootcamps, like Hack Reactor or App Acedemy.</p>
<p>Here I&#8217;m going to offer a key <img src="https://s.w.org/images/core/emoji/72x72/1f511.png" alt="?" class="wp-smiley" />piece of advice to these folks to help their applications stand out, and can 100% compensate for their lack of professional experience: <strong>contribute to open source</strong>. &#8220;Projects&#8221; done in a coding bootcamp, even when they&#8217;re spelled out in great bullet-point technical detail, don&#8217;t really tell me anything about your engineering ability. Open source contributions show me a passion for a given area, ability to work with others to have a contribution reviewed and accepted, and most importantly show actual code. Even better than one-off contributions, if you can grow into a recognized position in an open source project, that puts you ten steps ahead of applications even from folks with 20 years experience in the field, at least to an Open Source-biased company like Automattic.</p>
<p>Though I don&#8217;t know any of these boot camps well enough to suggest them, I love the idea in general. Even before the more formal bootcamps I&#8217;ve seen hundreds of examples of people who used free information and technology to rise to a very high level of technical contribution. In fact that&#8217;s very much my own story from the early days of WordPress. So in summary: it&#8217;s okay to learn to code through class projects, but show your value by getting involved in something bigger.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 01 Feb 2016 16:00:35 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:49;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:43:"WPTavern: In Case You Missed It – Issue 2";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:44:"http://wptavern.com?p=51094&preview_id=51094";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:49:"http://wptavern.com/in-case-you-missed-it-issue-2";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:9722:"<a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/01/ICYMIFeaturedImage.png" rel="attachment wp-att-50955"><img class="size-full wp-image-50955" src="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/01/ICYMIFeaturedImage.png?resize=676%2C292" alt="In Case You Missed It Featured Image" /></a>photo credit: <a href="http://www.flickr.com/photos/112901923@N07/16153818039">Night Moves</a> &#8211; <a href="https://creativecommons.org/licenses/by-nc/2.0/">(license)</a>
<p>There&#8217;s a lot of great WordPress content published in the community but not all of it is featured on the Tavern. This post is part of a new series where I share an assortment of items related to WordPress that caught my eye but didn&#8217;t make it into a full post.</p>
<h2>Taking Care of Each Other</h2>
<p>Rich Robinkoff has a great post that discusses <a href="http://rkoffy.com/wellness-in-the-wordpress-communty/">wellness in the community</a> and encourages the WordPress community to take care of each other. While it&#8217;s great to give back to WordPress, Robinkoff reminds us that we need to invest in ourselves before reinvesting in WordPress.</p>
<blockquote><p>Without giving back to ourselves, giving to the WordPress project would suffer. Invest in the wellness of WordPress by investing in yourself.</p></blockquote>
<p>Robinkoff is also working on a side project called <a href="http://wpambassador.com/">WPAmbassador.com</a>, a site that aims to bring people together. It will promote camaraderie and wellness throughout the community. It&#8217;s not ready yet but it may launch in February.</p>
<p>If you didn&#8217;t get a chance to attend or watch his presentation at WordCamp US, I highly encourage you to do so. However, tissues are not included.</p>
<div class="embed-wrap"></div>
<p>Rich is a great person and steward in the community. If you&#8217;re not already doing so, you should <a href="https://twitter.com/rkoffy">follow him</a> on Twitter.</p>
<h2>One of The Most Important Comments in WordPress&#8217; History Turns 13 Years Old</h2>
<p>On January 25th, 2003, <a href="https://mikelittle.org">Mike Little</a>, Co-founder of the WordPress project, <a href="https://ma.tt/2003/01/the-blogging-software-dilemma/">commented on</a> a blog post where Matt Mullenweg described his blogging software dilemma. It&#8217;s his comment along with a few others that inspired the birth of WordPress by forking b2.</p>
<a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/01/MikeLittleForkB2Comment.png" rel="attachment wp-att-51095"><img class="size-full wp-image-51095" src="http://i2.wp.com/wptavern.com/wp-content/uploads/2016/01/MikeLittleForkB2Comment.png?resize=648%2C280" alt="Mike Little's Comment" /></a>Mike Little&#8217;s Comment
<p>Check out <a href="https://github.com/WordPress/book/blob/master/Content/Part%201/3-the-blogging-software-dilemma.md">Milestones: The Story of WordPress</a> to learn more about the significance of his comment.</p>
<h2>Prologue Turns 8 Years Old</h2>
<p>In January of 2008, Automattic <a href="https://en.blog.wordpress.com/2008/01/28/introducing-prologue/">released Prologue</a>, a simple, innovative theme for providing status updates. The company used password-protected Prologue sites to allow employees to keep track of projects and updates.</p>
<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/01/PrologueScreenshot.png" rel="attachment wp-att-51096"><img class="size-full wp-image-51096" src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/01/PrologueScreenshot.png?resize=560%2C342" alt="Prologue in Action" /></a>Prologue in Action
<p>In March of 2009, <a href="https://en.blog.wordpress.com/2009/03/11/p2-the-new-prologue/">Automattic released P2</a>, the successor to Prologue. In 2014, the company transitioned internal sites to <a href="http://geto2.com/">o2, </a>successor to P2 and <a href="http://wptavern.com/o2-is-now-available-on-github">open sourced</a> its code in 2015.</p>
<h2>Don&#8217;t Read The Comments</h2>
<p>Anil Dash <a href="https://medium.com/@anildash/against-don-t-read-the-comments-aee43ce515b9#.r110p33yi">published a great post</a> on Medium that looks at the phrase, &#8220;Don&#8217;t read the comments.&#8221;</p>
<blockquote><p>We’ve made a habit out of telling people not to read the comments online. But what started as a cynical in-joke has become a bad habit, and an excuse for enabling abuse across the web.</p></blockquote>
<p>It&#8217;s a phrase I&#8217;ve seen many people say on Twitter referencing comments to articles published on the Tavern. Dash goes on to say, &#8220;Preventing abuse online requires the people running a site or an app to invest time, effort and attention into protecting their community. That’s the bottom line.&#8221;</p>
<p>This is one of the reasons why we created a <a href="http://wptavern.com/the-wp-tavern-comment-moderation-policy">comment moderation policy</a> and are taking a more active role this year moderating comments. However, in recent weeks, I&#8217;ve noticed some of the same people who said the phrase above are now engaging in the conversation which is helping to calm the waters.</p>
<p>For those thinking about disabling comments or need a reminder as to why their important, considering the following statement:</p>
<blockquote><p>There’s a grave cost to assuming online interactivity is always awful. The burden is felt most acutely in denying opportunity to those for whom connecting to a community online may be the only way to get a foot in the door. Those underrepresented, unheard voices are the most valuable ones we lose when we throw the baby out with the bathwater and assume online comments are necessarily bad.</p></blockquote>
<h2>This Week in Core</h2>
<p>If you want to keep a close eye on WordPress core development, there&#8217;s no better way than reading <a href="https://make.wordpress.org/core/tag/week-in-core/">This Week in Core</a>. Written and published by volunteers, the post highlights all of the noteworthy changes in an easy to digest format. Check out the most recent post that covers what happened in core between January 19-26.</p>
<blockquote class="wp-embedded-content"><p><a href="https://make.wordpress.org/core/2016/01/27/week-in-core-jan-19-26-2016/">Week in Core, Jan. 19-26 2016</a></p></blockquote>
<p></p>
<h2>Envato Hires WordPress Evangelist</h2>
<p>Envato hired <a href="https://twitter.com/jamesgiroux">James Giroux</a> to be its <a href="http://inside.envato.com/meet-envatos-wordpress-evangelist/">WordPress evangelist</a>. In the post, he explains some of the responsibilities his role entails.</p>
<blockquote><p>There are many compelling stories to tell. Envato WordPress creatives from all over the world have done some truly innovative things to enhance the experience of everyday users. I want to find and help tell those stories in the WordPress community.</p></blockquote>
<p>If you&#8217;d like to meet Giroux in person, he&#8217;s attending <a href="http://pressnomics.com/">PressNomics</a> in March.</p>
<h2>How the REST API Changes WordPress Plugin Development</h2>
<p><a href="http://joshpress.net/how-wp-api-changes-wordpress-plugin-development/">Josh Pollock explains</a> how the REST API changes WordPress plugin development.</p>
<blockquote><p>WordPress didn’t get to 25% market share on blogs and it’s not going to get to 50% or whatever that way. The growth comes from eCommerce, publishing, membership sites, inbound marketers etc. These are all users that can benefit from being service providers.</p>
<p>I think that those of us who empower these users by giving them the tools needed to make their sites have to think API first. Your plugin’s interaction with the client is going to be more and more coming through the API.</p></blockquote>
<blockquote class="wp-embedded-content"><p><a href="http://joshpress.net/how-wp-api-changes-wordpress-plugin-development/">How The WordPress REST API Changes WordPress Plugin Development</a></p></blockquote>
<p></p>
<h2>Is WordPress Made of Spaghetti Code?</h2>
<p>If you&#8217;ve been around the WordPress ecosystem for any length of time, you&#8217;ve likely run into a conversation or two where someone says WordPress&#8217; code is a mess. On the <a href="https://kinsta.com/blog/is-wordpress-code-really-a-mess/">Kinsta blog</a>, Daniel Pataki takes a hard look at what bad code is, whether or not users care, and if it&#8217;s a legitimate reason to avoid using WordPress.</p>
<h2>Wapuutah!</h2>
<p>In what is a traditional part of this series, I end each issue featuring a Wapuu design. For those who don&#8217;t know, Wapuu is the <a href="http://wapuu.jp/2015/12/12/wapuu-origins/">unofficial mascot</a> of the WordPress project.</p>
<p><a href="https://2015.slc.wordcamp.org/08/18/meet-wapuutah-the-wordcamp-slc-wapuu/">Wapuutah</a>, created by <a href="https://twitter.com/supernovia">Velda Christensen</a>, represents <a href="https://2015.slc.wordcamp.org/08/18/meet-wapuutah-the-wordcamp-slc-wapuu/">WordCamp Salt Lake City, Utah, 2015</a>. As you can see, Wapuutah is decked out in camping gear and ready for an extended getaway in the mountains outside of Salt Lake City. I hope Wapuutah remembered to bring some bug spray!</p>
<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/01/Wapuutah.png" rel="attachment wp-att-51099"><img class="size-full wp-image-51099" src="http://i0.wp.com/wptavern.com/wp-content/uploads/2016/01/Wapuutah.png?resize=348%2C348" alt="Wapuutah!" /></a>Wapuutah!
<p>That&#8217;s it for issue two. If you recently discovered a cool resource or post related to WordPress, please share it with us in the comments.</p>
<div id="epoch-width-sniffer"></div>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 29 Jan 2016 19:58:34 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Jeff Chandler";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}}}}}}}}}}}}s:4:"type";i:128;s:7:"headers";a:10:{s:6:"server";s:5:"nginx";s:4:"date";s:29:"Mon, 29 Feb 2016 06:44:56 GMT";s:12:"content-type";s:8:"text/xml";s:14:"content-length";s:6:"251434";s:10:"connection";s:5:"close";s:4:"vary";s:15:"Accept-Encoding";s:13:"last-modified";s:29:"Mon, 29 Feb 2016 06:30:15 GMT";s:15:"x-frame-options";s:10:"SAMEORIGIN";s:4:"x-nc";s:11:"HIT lax 249";s:13:"accept-ranges";s:5:"bytes";}s:5:"build";s:14:"20130911020210";}