<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Portland WordPress Meetup</title>
	<atom:link href="http://pdxwp.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://pdxwp.com</link>
	<description>Feeling and Spreading the WordPress Love in the Rose City</description>
	<lastBuildDate>Mon, 20 May 2013 19:48:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='pdxwp.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Portland WordPress Meetup</title>
		<link>http://pdxwp.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://pdxwp.com/osd.xml" title="Portland WordPress Meetup" />
	<atom:link rel='hub' href='http://pdxwp.com/?pushpress=hub'/>
		<item>
		<title>Two Meetups for June: WordPress Loves Backbone JS and Plugin Ignite Talks</title>
		<link>http://pdxwp.com/2013/05/16/two-meetups-for-june-wordpress-loves-backbone-js-and-plugin-ignite-talks/</link>
		<comments>http://pdxwp.com/2013/05/16/two-meetups-for-june-wordpress-loves-backbone-js-and-plugin-ignite-talks/#comments</comments>
		<pubDate>Thu, 16 May 2013 23:54:19 +0000</pubDate>
		<dc:creator>Daniel Bachhuber</dc:creator>
				<category><![CDATA[Meetings]]></category>
		<category><![CDATA[Allen Snook]]></category>
		<category><![CDATA[Backbone JS]]></category>
		<category><![CDATA[Beau Lebens]]></category>
		<category><![CDATA[WordPress plugins]]></category>

		<guid isPermaLink="false">http://pdxwp.com/?p=1697</guid>
		<description><![CDATA[We have two awesome meetups scheduled for June. Developer: WordPress Loves Backbone JS Date &#38; Time: Monday, June 10th at 6:30 pm WordPress 3.5 is the first version of WordPress to include Backbone.js &#8211; a powerful and popular Javascript framework for taming your Javascript. With Backbone.js, your data can be encapsulated into models and collections that are [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1697&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>We have two awesome meetups scheduled for June.</p>
<h3><a href="http://www.meetup.com/pdx-wp/events/119776642/">Developer: WordPress Loves Backbone JS</a></h3>
<p><strong>Date &amp; Time:</strong> Monday, June 10th at 6:30 pm</p>
<p>WordPress 3.5 is the first version of WordPress to include Backbone.js &#8211; a powerful and popular Javascript framework for taming your Javascript. With Backbone.js, your data can be encapsulated into models and collections that are then exposed to the DOM through views &#8211; views which automatically update as your data changes &#8211; with out-of-the-box integration to RESTful APIs and more.</p>
<p>We&#8217;re excited to have <a href="http://www.allensnook.com/">Allen Snook</a> and <a href="http://dentedreality.com.au/">Beau Lebens</a>, from Automattic&#8217;s Team Social, tell us about some of their recent work with Backbone. They&#8217;ll also walk us through an example plugin that you can use as a springboard for developing your own Backbone.js savvy extensions to WordPress.</p>
<p><strong>Note:</strong> Due to limited space, we&#8217;re capping signups to 70. If you RSVP and realize later you can&#8217;t make the meetup, please change your status so someone else can attend.</p>
<h3><a href="http://www.meetup.com/pdx-wp/events/119786552/">User: Plugin Ignite Talks</a></h3>
<p><strong>Date &amp; Time:</strong> Monday, June 24th at 6:30 pm</p>
<p>For the next PDXWP user meetup, we want to showcase the plugins which make WordPress as awesome as it is.</p>
<p>Know a plugin you just can&#8217;t live without? Want to practice your public speaking skills in front of a lively and welcoming audience? <a href="https://docs.google.com/a/danielbachhuber.com/forms/d/1nxolBv527BlFXMFNnCwLDwgt6vD3qDmVqBvZBEDtSpw/edit">We welcome you to apply by June 10th</a>.</p>
<p>Love discovering new plugins? Join us! We&#8217;ll follow the <a href="http://en.wikipedia.org/wiki/Ignite_(event)">Ignite format</a> for the evening — 10 lucky PDXWP members selected by Daniel Payne and Kory McDow will show off their favorite plugin in 5 minutes and 20 slides a piece.</p>
<p>Hope to see you there!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1697/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1697/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1697&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/05/16/two-meetups-for-june-wordpress-loves-backbone-js-and-plugin-ignite-talks/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2cffb19eae4c61e51884d4648b2a3ed9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">danielbachhuber</media:title>
		</media:content>
	</item>
		<item>
		<title>What&#8217;s Coming in WordPress 3.6 Recap</title>
		<link>http://pdxwp.com/2013/05/06/whats-coming-in-wordpress-3-6-recap/</link>
		<comments>http://pdxwp.com/2013/05/06/whats-coming-in-wordpress-3-6-recap/#comments</comments>
		<pubDate>Tue, 07 May 2013 02:24:26 +0000</pubDate>
		<dc:creator>Daniel Bachhuber</dc:creator>
				<category><![CDATA[Meetings]]></category>
		<category><![CDATA[Michael Fields]]></category>
		<category><![CDATA[WordPress 3.6]]></category>

		<guid isPermaLink="false">http://pdxwp.com/?p=1687</guid>
		<description><![CDATA[Last week, Michael Fields, a Theme Wrangler for Automattic, walked about 50 of us through what&#8217;s coming in WordPress 3.6: Portland WordPress Meetup: 3.6 Preview from Michael Fields Your quick summary of what should be coming: Post formats are front and center of the publishing experience, and you&#8217;ll have a new theme to test them out. [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1687&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Last week, <a href="http://mfields.org/">Michael Fields</a>, a Theme Wrangler for Automattic, walked about 50 of us through what&#8217;s coming in WordPress 3.6:</p>
<div class="embed-slideshare"><iframe src="http://www.slideshare.net/slideshow/embed_code/20216838" width="427" height="356" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC;border-width:1px 1px 0;margin-bottom:5px" allowfullscreen webkitallowfullscreen mozallowfullscreen> </iframe>
<div style="margin-bottom:5px"> <strong> <a href="http://www.slideshare.net/MichaelFields/portland-wordpress-meetup-36-preview" title="Portland WordPress Meetup: 3.6 Preview" target="_blank">Portland WordPress Meetup: 3.6 Preview</a> </strong> from <strong><a href="http://www.slideshare.net/MichaelFields" target="_blank">Michael Fields</a></strong> </div>
</div>
<p>Your quick summary of what should be coming:</p>
<ul>
<li>Post formats are front and center of the publishing experience, and you&#8217;ll have a <a href="http://en.blog.wordpress.com/2013/04/25/twenty-thirteen/">new theme</a> to test them out.</li>
<li>A login modal window appears if your login session expires while you&#8217;re composing a post.</li>
<li>WordPress pays better attention to who is editing what post, indicates such in the admin, and lets you &#8220;take over&#8221; editing of the post.</li>
<li>The Revisions UI received a complete overhaul. It&#8217;s now much easier to find content saved in a previous version.</li>
<li>Easier, more intuitive menu management.</li>
<li>Extended support for embedding rich media from services like Rdio and Spotify.</li>
<li>&#8230; along with dozens, if not hundreds, of bug fixes, performance improvements, and general enhancements.</li>
</ul>
<p>WordPress 3.6 was originally scheduled to be released right around this time. As always in shipping software, it&#8217;s taking a bit more effort than expected. We hope to see it out the door in the very near future!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1687/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1687/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1687&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/05/06/whats-coming-in-wordpress-3-6-recap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2cffb19eae4c61e51884d4648b2a3ed9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">danielbachhuber</media:title>
		</media:content>
	</item>
		<item>
		<title>Two Meetups for May: Code Review Takes Two and WordPress&#8217; 10th Anniversary Party</title>
		<link>http://pdxwp.com/2013/04/29/two-meetups-for-may-code-review-takes-two-and-wordpress-10th-anniversary-party/</link>
		<comments>http://pdxwp.com/2013/04/29/two-meetups-for-may-code-review-takes-two-and-wordpress-10th-anniversary-party/#comments</comments>
		<pubDate>Mon, 29 Apr 2013 23:44:50 +0000</pubDate>
		<dc:creator>Daniel Bachhuber</dc:creator>
				<category><![CDATA[Meetings]]></category>
		<category><![CDATA[code review]]></category>
		<category><![CDATA[Mike Bijon]]></category>
		<category><![CDATA[WordPress 10th Anniversary Party]]></category>

		<guid isPermaLink="false">http://pdxwp.com/?p=1680</guid>
		<description><![CDATA[This coming month we have two great meetups scheduled. Developer: Code Review Takes Two Date &#38; Time: Monday, May 13th at 6:30 pm Ever wanted to become a better developer? One sure way: have your code reviewed. Code review can offer valuable perspective on how to write concisely, solve challenging problems, or make your architecture abstracted. For [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1680&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>This coming month we have two great meetups scheduled.</p>
<h3><a href="http://www.meetup.com/pdx-wp/events/90080782/">Developer: Code Review Takes Two</a></h3>
<p><strong>Date &amp; Time:</strong> Monday, May 13th at 6:30 pm</p>
<p>Ever wanted to become a better developer? One sure way: have your code reviewed. Code review can offer valuable perspective on how to write concisely, solve challenging problems, or make your architecture abstracted.</p>
<p>For this Developer meetup, Mike Bijon and Jeremy Ross will step up to show us how code review should be done. In addition to what you should look for as a reviewer, they&#8217;ll cover ways a review can be conducted and how feedback should be communicated.</p>
<p><strong>Note:</strong> Due to limited space, we&#8217;re capping signups to 75. If you RSVP and realize later you can&#8217;t make the meetup, please change your status so someone else can attend.</p>
<h3><a href="http://www.meetup.com/WordPress/Portland-OR/920682/">WordPress&#8217; 10th Anniversary Party</a></h3>
<p><strong>Date, Time &amp; Location:</strong> Monday (Memorial Day), May 27th at 7 pm at The Green Dragon</p>
<p>WordPress is turning 10, and you&#8217;re invited! To celebrate the occasion, the WordPress Foundation is coordinating a global party on Monday, May 27th.</p>
<p>We&#8217;ll be kicking it Portland-style at the <a href="http://www.pdxgreendragon.com/">Green Dragon</a>, 9th and Yamhill in SE. Come stop by at 7 pm or afterwards to regale WordPress times of yore. There&#8217;s no set agenda but, if we can get 50 people <a href="http://www.meetup.com/WordPress/Portland-OR/920682/">RSVP&#8217;d on the Meetup Everywhere page</a>, we&#8217;ll have special 10th anniversary swag to hand out.</p>
<p>Hope to see you there!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1680/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1680/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1680&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/04/29/two-meetups-for-may-code-review-takes-two-and-wordpress-10th-anniversary-party/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2cffb19eae4c61e51884d4648b2a3ed9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">danielbachhuber</media:title>
		</media:content>
	</item>
		<item>
		<title>Unit Testing Hack Day Recap</title>
		<link>http://pdxwp.com/2013/04/28/unit-testing-hack-day-recap/</link>
		<comments>http://pdxwp.com/2013/04/28/unit-testing-hack-day-recap/#comments</comments>
		<pubDate>Mon, 29 Apr 2013 03:30:50 +0000</pubDate>
		<dc:creator>Daniel Bachhuber</dc:creator>
				<category><![CDATA[Meetings]]></category>
		<category><![CDATA[developer meetup]]></category>
		<category><![CDATA[hack day]]></category>
		<category><![CDATA[Max Cutler]]></category>
		<category><![CDATA[PHPUnit]]></category>
		<category><![CDATA[unit testing]]></category>

		<guid isPermaLink="false">http://pdxwp.com/?p=1671</guid>
		<description><![CDATA[Yesterday, even though it was a beautiful Saturday afternoon, 15 of us gathered to level up our Unit Testing skills at the first PDXWP Hack Day. After a couple of hours getting learned, we managed to ship: Tests for wp_cache_init() and wp_cache_replace(). Props Zack Tollman. Unit tests for the Widgets API. Props Corey McKrill and Robert [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1671&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Yesterday, even though it was a beautiful Saturday afternoon, 15 of us gathered to level up our Unit Testing skills at the first PDXWP Hack Day.</p>
<p>After a couple of hours getting learned, we managed to ship:</p>
<ul>
<li><span style="line-height:13px;"><a href="http://core.trac.wordpress.org/changeset/1275/tests">Tests for wp_cache_init() and wp_cache_replace()</a>. Props Zack Tollman.</span></li>
<li><a href="http://core.trac.wordpress.org/changeset/1274/tests">Unit tests for the Widgets API</a>. Props Corey McKrill and Robert Lilly.</li>
<li><a href="https://twitter.com/geekcode/status/328269773576232961">Travis CI for Edit Flow</a>. Props Mike Bijon.</li>
<li>A pull request to <a href="https://github.com/Automattic/developer/pull/45">add Debug Bar Console</a> to the Developer plugin. Props Mike Bijon.</li>
<li><a href="https://github.com/Automattic/developer/pull/44">wp-cli support and basic Travis CI</a> for the Developer plugin. Props&#8230; me.</li>
</ul>
<p>To kick the day off, special guest Max Cutler introduced us to the many variants of unit testing. <a href="https://speakerdeck.com/maxcutler/hack-with-me-unit-and-behavioral-tests">Check out his Speakerdeck</a> for the full presentation.</p>
<p>Max emphasized writing unit tests to:</p>
<ul>
<li><strong>Verify your functionality.</strong> Does the code do what you want it to do?</li>
<li><strong>Validate technical design.</strong> Code that&#8217;s easier to test is generally better code. Plus, tests document what you&#8217;re intending to do.</li>
<li><strong>Protect against bugs.</strong> If you find a bug, both fix the bug and write tests to protect against the bug in the future.</li>
<li><strong>Refactor with confidence.</strong> Core takes backwards compat seriously, so having unit tests to describe coverage makes it easier to change code.</li>
</ul>
<p>Unit testing specifically tests individual methods and functions to confirm input equals expected output. Integration testing looks at the code from the users&#8217; perspective — everything works as expected. In core&#8217;s test suite, most tests are integration tests.</p>
<p>Max walked us through how WordPress core uses PHPUnit for testing, with lots of concrete examples. Thanks to good work by Jeremy and Zack, most of us had the test suite up and running <a href="http://pdxwp.com/2013/04/22/unit-test-hack-day-prep-on-saturday-april/">via Vagrant</a>. Here&#8217;s one great reason to help increase core&#8217;s test coverage:</p>
<blockquote class='twitter-tweet'><p>&quot;Does your plugin use a core API? Write a test for it so that core devs don&#039;t unintentionally break your use-case.&quot; &#8211; @<a href="https://twitter.com/maxcutler">maxcutler</a> <a href="http://twitter.com/search?q=%23pdxwp" title="#pdxwp">#pdxwp</a>&mdash; <br />Daniel Bachhuber (@danielbachhuber) <a href='http://twitter.com/#!/danielbachhuber/status/328247676770590721' data-datetime='2013-04-27T20:41:59+00:00'>April 27, 2013</a></p></blockquote>
<p>Mike Bijon then talked through including tests with your plugin. It can be difficult to know where to get started when you&#8217;re looking at a blank slate. 100% coverage is much more easily attainable when you&#8217;ve been writing tests from the beginning, or practicing test-driven development.</p>
<p>It can be much easier incorporating tests into your plugin by breaking it down:</p>
<ul>
<li>WordPress doesn&#8217;t WOSD.</li>
<li>Your code loads.</li>
<li>Each method has a test.</li>
<li>Code coverage reports.</li>
</ul>
<p>Fortunately, there&#8217;s a couple of easy ways to get started. wp-cli takes care of the busy work with a <code>wp scaffold plugin-tests &lt;plugin-name&gt;</code> command. This will add <a href="https://github.com/danielbachhuber/developer/commit/44f330c6a21a95ee73028aef88959917b84c7a16">all of the necessary code</a> to your plugin to start writing PHPUnit tests. It also includes a travis.yml file — all you need for basic Travis CI.</p>
<p>Thanks again to our speakers, and everyone who took time out of their Saturday afternoon to <a href="http://www.youtube.com/watch?v=OuK-cvIzixY">raise the knowledge</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1671/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1671/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1671&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/04/28/unit-testing-hack-day-recap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2cffb19eae4c61e51884d4648b2a3ed9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">danielbachhuber</media:title>
		</media:content>
	</item>
		<item>
		<title>Unit Test Hack Day Prep</title>
		<link>http://pdxwp.com/2013/04/22/unit-test-hack-day-prep-on-saturday-april/</link>
		<comments>http://pdxwp.com/2013/04/22/unit-test-hack-day-prep-on-saturday-april/#comments</comments>
		<pubDate>Mon, 22 Apr 2013 23:58:35 +0000</pubDate>
		<dc:creator>Zack Tollman</dc:creator>
				<category><![CDATA[Meetings]]></category>
		<category><![CDATA[developer meetup]]></category>
		<category><![CDATA[hack day]]></category>
		<category><![CDATA[Max Cutler]]></category>
		<category><![CDATA[unit testing]]></category>
		<category><![CDATA[vagrant]]></category>

		<guid isPermaLink="false">http://pdxwp.com/2013/04/22/unit-test-hack-day-prep-on-saturday-april/</guid>
		<description><![CDATA[On Saturday, April 27th, PDXWP is hosting a hack day focusing on unit testing. Max Cutler, who has contributed significantly to WordPress core unit tests, will be teaching the group about unit testing. WordPress core unit tests are written using PHPUnit. While PHPUnit is not the only unit testing framework for PHP, it is what [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1663&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>On Saturday, April 27th, PDXWP is hosting a <a href="http://www.meetup.com/pdx-wp/events/109281992/">hack day focusing on unit testing</a>. <a href="http://www.maxcutler.com/">Max Cutler</a>, who has contributed significantly to WordPress core unit tests, will be teaching the group about unit testing.</p>
<p>WordPress core unit tests are written using PHPUnit. While PHPUnit is not the only unit testing framework for PHP, it is what WordPress has adopted and therefore, our hack day will focus on PHPUnit.</p>
<p>One of the most frustrating aspects of PHPUnit is getting it set up in the first place. Ideally, we will spend our time on Saturday learning to write unit tests, discussing how to improve unit tests, and getting our projects to pass the tests. Hopefully, we will not spend our time trying to get PHPUnit configured.</p>
<p>To this end, I have stood on the giant shoulders of Jeremy Felt and 10up by adding PHPUnit and the WordPress core unit tests to their outstanding Varying Vagrant Vagrants (VVV) vagrant setup. Instead of painstakingly writing a tutorial on how to install PHPUnit on OS X, Linux and Windows (and then trying to work around difficulties with MAMP, WAMP, XAMPP, etc.), this vagrant setup will build a virtual environment for you to work with locally during the dev day.</p>
<h3>Getting Setup</h3>
<ol>
<li><a title="https://www.virtualbox.org/wiki/Downloads" href="https://www.virtualbox.org/wiki/Downloads">Install Virtual Box</a> .</li>
<li><a title="http://downloads.vagrantup.com/" href="http://downloads.vagrantup.com/">Install Vagrant</a>.</li>
<li>Add &#8220;192.168.50.4 local.wordpress.dev local.wordpress-trunk.dev&#8221; to your hosts file.</li>
<li>Determine where you want to store your vagrant files. I store mine in &#8220;~/Vagrant&#8221; on OS X.</li>
<li>Clone VVV to your hard drive with, &#8220;git clone <a href="mailto:git@github.com">git@github.com</a>:10up/varying-vagrant-vagrants.git&#8221;.</li>
<li>Move to the cloned directory (e.g., &#8220;cd varying-vagrant-vagrants&#8221;).</li>
<li>Run &#8220;vagrant up&#8221;.</li>
</ol>
<p>You will now see a lot of output from your terminal. The base box will be downloaded, the server will be created, and the provisioning script will be executed, which installs a LEMP stack with a WordPress installation and the core unit tests. This can take between 10-30 minutes and is highly dependent upon your download speed (read: don&#8217;t try this at Starbucks or on the hack day!).</p>
<p>To test if you have correctly setup the box, visit &#8220;<a title="local.wordpress-trunk.dev" href="local.wordpress-trunk.dev">http://local.wordpress-trunk.dev</a>&#8221; in your browser. If everything installed properly, you should see an installation of WordPress with the Twenty Thirteen theme.</p>
<p>To learn more about this vagrant setup, you can read the box&#8217;s description <a title="https://github.com/10up/varying-vagrant-vagrants/blob/master/README.md" href="https://github.com/10up/varying-vagrant-vagrants/blob/master/README.md">read me</a>.</p>
<h3>Running Unit Tests</h3>
<ol>
<li>In terminal, navigate to your clone of the VVV repo.</li>
<li>Run &#8220;vagrant ssh&#8221;. You are now ssh-ed into the virtual machine.</li>
<li>Run &#8220;cd /srv/www/wordpress-unit-tests&#8221;.</li>
<li>Run &#8220;sudo phpunit&#8221;</li>
</ol>
<p>You should now see a lot of output:</p>
<p><img alt="" src="http://f.cl.ly/items/3r3f0a0x2s213f342z1b/Screen%20Shot%202013-04-21%20at%203.36.14%20PM.png" /></p>
<p>You are seeing the WordPress unit tests running! In order to not spoil the fun, I will let Max explain what is going on during our meetup!</p>
<h3>Your Job</h3>
<p>Your job is simple&#8211;get PHPUnit working before the hack day. We will all have a lot more fun if everyone is already setup in advance. We can then focus on writing tests instead of setup up the tool. If you have questions, please have at it below! We will be happy to help.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1663/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1663/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1663&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/04/22/unit-test-hack-day-prep-on-saturday-april/feed/</wfw:commentRss>
		<slash:comments>32</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/980df66b142b2a067b3f8b67b04352de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tollmanz</media:title>
		</media:content>

		<media:content url="http://f.cl.ly/items/3r3f0a0x2s213f342z1b/Screen%20Shot%202013-04-21%20at%203.36.14%20PM.png" medium="image" />
	</item>
		<item>
		<title>The Power of WordPress’ Roles and Capabilities Recap</title>
		<link>http://pdxwp.com/2013/04/21/the-power-of-wordpress-roles-and-capabilities-recap/</link>
		<comments>http://pdxwp.com/2013/04/21/the-power-of-wordpress-roles-and-capabilities-recap/#comments</comments>
		<pubDate>Mon, 22 Apr 2013 01:26:17 +0000</pubDate>
		<dc:creator>Daniel Bachhuber</dc:creator>
				<category><![CDATA[Meetings]]></category>
		<category><![CDATA[developer meetup]]></category>
		<category><![CDATA[Erick Hitter]]></category>
		<category><![CDATA[roles and capabilities]]></category>

		<guid isPermaLink="false">http://pdxwp.com/?p=1658</guid>
		<description><![CDATA[Monday night brought Erick Hitter, Team Custom Lead at Automattic, to speak to just under 40 people in developer meetup about the Power of WordPress&#8217; Roles and Capabilities. His presentation took two parts, which Erick has also conveniently posted for your reviewing pleasure: The Power of WordPress’ Roles and Capabilities Understanding map_meta_cap Special thanks to Luke Woodward for [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1658&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<div class="embed-vimeo"><iframe src="http://player.vimeo.com/video/64430739" width="632" height="356" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></div>
<p>Monday night brought <a href="http://ethitter.com/">Erick Hitter</a>, Team Custom Lead at Automattic, to speak to just under 40 people in developer meetup about the Power of WordPress&#8217; Roles and Capabilities. His presentation took two parts, which Erick has also conveniently posted for your reviewing pleasure:</p>
<ul>
<li><a href="http://slides.ethitter.com/roles-and-capabilities/">The Power of WordPress’ Roles and Capabilities</a></li>
<li><a href="http://slides.ethitter.com/roles-and-capabilities-map-meta-cap/">Understanding <code>map_meta_cap</code></a></li>
</ul>
<p>Special thanks to <a href="http://luke-woodward.com/">Luke Woodward</a> for recording, processing, and posting the video.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1658/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1658&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/04/21/the-power-of-wordpress-roles-and-capabilities-recap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2cffb19eae4c61e51884d4648b2a3ed9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">danielbachhuber</media:title>
		</media:content>
	</item>
		<item>
		<title>Three Meetups for April: Roles and Capabilities, Unit Testing and What&#8217;s Coming in WordPress 3.6</title>
		<link>http://pdxwp.com/2013/04/04/three-meetups-for-april-roles-and-capabilities-unit-testing-and-whats-coming-in-wordpress-3-6/</link>
		<comments>http://pdxwp.com/2013/04/04/three-meetups-for-april-roles-and-capabilities-unit-testing-and-whats-coming-in-wordpress-3-6/#comments</comments>
		<pubDate>Thu, 04 Apr 2013 20:47:17 +0000</pubDate>
		<dc:creator>Daniel Bachhuber</dc:creator>
				<category><![CDATA[Meetings]]></category>
		<category><![CDATA[Erick Hitter]]></category>
		<category><![CDATA[Max Cutler]]></category>
		<category><![CDATA[Michael Fields]]></category>
		<category><![CDATA[Mike Bijon]]></category>
		<category><![CDATA[roles and capabilities]]></category>
		<category><![CDATA[unit testing]]></category>
		<category><![CDATA[WordPress 3.6]]></category>

		<guid isPermaLink="false">http://pdxwp.com/?p=1653</guid>
		<description><![CDATA[This coming month we have two three great meetups scheduled. The Power of WordPress’ Roles and Capabilities Date &#38; Time: Monday, April 15th at 6:30 pm WordPress’ roles seem simple enough on the surface, but behind the Administrator, Editor, and the other default roles is a powerful system that can be customized extensively. For April&#8217;s PDXWP [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1653&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>This coming month we have <del>two</del> three great meetups scheduled.</p>
<h3><a href="http://www.meetup.com/pdx-wp/events/109253772/">The Power of WordPress’ Roles and Capabilities</a></h3>
<p><strong>Date &amp; Time:</strong> Monday, April 15th at 6:30 pm</p>
<p>WordPress’ roles seem simple enough on the surface, but behind the Administrator, Editor, and the other default roles is a powerful system that can be customized extensively. For April&#8217;s PDXWP Developer&#8217;s meetup, Erick Hitter, Lead of Team Custom at Automattic, is joining us to talk about WordPress roles and capabilities.</p>
<p>While some have said that other CMS’ have an advantage when it comes to security and customizing capabilities, Erick will demonstrate that that isn’t true. Starting with a walkthrough of how to modify existing roles and create new ones, he will then cover how to leverage custom roles in WordPress code. Finally, he will wrap up with a discussion of some powerful filters that will prove WordPress has a roles and capabilities system that is as flexible as the popular competitors often touted as having superior implementations.</p>
<h3><a href="http://www.meetup.com/pdx-wp/events/109281992/">Hack With Me: Unit and Behavioral Tests</a></h3>
<p><strong>Date &amp; Time:</strong> Saturday, April 27th from 1 to 5 pm</p>
<p>Who&#8217;s up for spending an afternoon learning more about unit and behavioral tests, and writing some for core or their favorite plugin? We are!</p>
<p>Mike Bijon and Max Cutler will kick off the afternoon introducing unit tests, why they&#8217;re valuable, and how to write them. We&#8217;ll then spend a few hours writing our own, either for core or a plugin we admire. Our goal is for everyone attending to successfully finish at least one unit test.</p>
<p>A week or so prior to the 27th, Zack will post notes on how you&#8217;ll need to preconfigure your development environment with PHPUnit, etc.</p>
<h3><a href="http://www.meetup.com/pdx-wp/events/112501922/">What&#8217;s Coming in WordPress 3.6</a></h3>
<p><strong>Date &amp; Time:</strong> Monday, April 29th at 6:30 pm</p>
<p>Version 3.6 of WordPress is slated for release on April 29th, 2013.</p>
<p>What changes have been made? What great new features are included? How will my site be affected? These are great questions! We will answer all of these and more in this month&#8217;s user meetup.</p>
<p>Michael Fields will walk us through some of the new features:</p>
<ol>
<li>New bundled theme Twenty Thirteen.</li>
<li>A complete rewrite of the post format interface.</li>
<li>Enhancements to the Custom Menu interface.</li>
</ol>
<p>If you&#8217;ve got a fever and the only cure is WordPress this is a presentation you will not want to miss.</p>
<p>RSVP for all of these our <a href="http://www.meetup.com/pdx-wp/">Meetup page</a>. Hope to see you there!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1653/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1653/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1653&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/04/04/three-meetups-for-april-roles-and-capabilities-unit-testing-and-whats-coming-in-wordpress-3-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2cffb19eae4c61e51884d4648b2a3ed9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">danielbachhuber</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress Portland &#8211; MemberMouse Needs a Customer Support Specialist!</title>
		<link>http://pdxwp.com/2013/04/02/wordpress-portland-membermouse-needs-a-customer-support-specialist/</link>
		<comments>http://pdxwp.com/2013/04/02/wordpress-portland-membermouse-needs-a-customer-support-specialist/#comments</comments>
		<pubDate>Tue, 02 Apr 2013 21:13:18 +0000</pubDate>
		<dc:creator>eturnnessen</dc:creator>
				<category><![CDATA[Jobs]]></category>
		<category><![CDATA[MemberMouse]]></category>

		<guid isPermaLink="false">http://pdxwp.com/?p=1649</guid>
		<description><![CDATA[This is a guest post from Eric Turnnessen, Founder of MemberMouse. If you’d like to make an announcement to the group, let us know. MemberMouse is a premium WordPress membership plugin that allows our customers to accept payments, manage customers, deliver premium content in a password protected member&#8217;s area, track critical business metrics and more. [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1649&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><em>This is a guest post from Eric Turnnessen, Founder of MemberMouse. If you’d like to make an announcement to the group, let us know.</em></p>
<p><a href="http://membermouse.com">MemberMouse</a> is a premium WordPress membership plugin that allows our customers to accept payments, manage customers, deliver premium content in a password protected member&#8217;s area, track critical business metrics and more. Our company&#8217;s mission is to deliver a powerful and innovative platform that provides our customers with the tools they need to run and grow a profitable online business.</p>
<p>We&#8217;re looking to hire a Customer Support Specialist to help extend our world-class support. When someone signs up for MemberMouse they can be confident that they&#8217;re not only getting the best technology for their online business but they&#8217;re also getting a knowledgeable, friendly team they can reach out to when they need help.</p>
<p><span id="more-1649"></span>We approach customer support from two perspectives. First, we&#8217;re here to help customers with the technical side of things which includes basic to advanced MemberMouse and WordPress configuration and implementation. Our first line of defense here is our comprehensive <a href="http://support.membermouse.com">Support Center</a> where we provide video walkthroughs and helpful articles. One of the primary responsibilities of the customer support specialist position is to ensure that the support center is kept up-to-date. This includes updating existing articles when enhancements are made to the platform and also writing new articles when new features are released or when a common support question is not currently being answered in the support center.</p>
<p>Second, we&#8217;re here to help customers with strategic implementation. All the features that make it into the platform are there to ensure that customers have everything they need to build and grow an online business. MemberMouse is very flexible and supports multiple business models so there is more then one way to accomplish something and it&#8217;s our job to provide customers with the best guidance to achieve what they want</p>
<p>We&#8217;re looking for someone who is proficient with WordPress including an understanding of WordPress themes and plugins, can learn new web-based technologies quickly and as a plus understands the basic concepts of online business (i.e. payment gateways, PCI compliance, affiliates, email service providers, upsells/downsells, one-time offers, free trials, coupons, etc.). The person we&#8217;re looking for is good with people, has excellent written and verbal communication skills and can handle multiple tasks and prioritize work.</p>
<p>MemberMouse doesn&#8217;t have a physical office and our team is spread across the country in different locations. For the most part you&#8217;ll have the flexibility to work where ever you want and we will get together as a team frequently in the Portland area to work together. With the flexibility and freedom that comes with a position like this, it&#8217;s important that you be self-motivated and disciplined. We&#8217;re a small company and each member of our team holds themselves accountable and has an entrepreneurial spirit. We each value autonomy in our work and are not interested in managing others or being managed. We know what needs to get done and we get it done.</p>
<p>We&#8217;re offering $15-$25/hour for this position based on qualifications and are looking for someone who can commit to working 24 hours a week Monday &#8211; Thursday 10 AM &#8211; 5 PM PST.</p>
<p>While your primary focus will be on customer support, there&#8217;s a lot of opportunity to grow within MemberMouse. As we grow as a company there will be numerous opportunities to get involved in all areas of the business from marketing to development. We&#8217;re definitely interested in someone who&#8217;s enthusiastic to get involved, has ideas and wants to grow with our company.</p>
<p>If you&#8217;re interested in working with us, send me an email (<a href="mailto:eric@membermouse.com">eric@membermouse.com</a>) introducing yourself and briefly explaining why you think you&#8217;d be a good fit and we&#8217;ll go from there!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1649/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1649/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1649&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/04/02/wordpress-portland-membermouse-needs-a-customer-support-specialist/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c787a161969bd2bddc3ae0221c16776c?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">eturnnessen</media:title>
		</media:content>
	</item>
		<item>
		<title>April 3rd: Hang Out With 10up in Portland!</title>
		<link>http://pdxwp.com/2013/04/01/april-3rd-hang-out-with-10up-in-portland/</link>
		<comments>http://pdxwp.com/2013/04/01/april-3rd-hang-out-with-10up-in-portland/#comments</comments>
		<pubDate>Mon, 01 Apr 2013 17:16:18 +0000</pubDate>
		<dc:creator>Jeremy Felt</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[10up]]></category>

		<guid isPermaLink="false">http://pdxwp.com/?p=1638</guid>
		<description><![CDATA[Hey Portland WordPressers! Almost the entire 10up team is coming into Portland this week for an internal developer summit. As part of our schedule, we&#8217;re having a community social over at Green Dragon on Wednesday, April 3rd starting at 7 pm. We&#8217;d love to buy you a beer, hang out and talk WordPress and web [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1638&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Hey Portland WordPressers!</p>
<p>Almost the entire <a href="http://10up.com/about/">10up team</a> is coming into Portland this week for an internal developer summit. As part of our schedule, we&#8217;re having a community social over at <a href="http://greendragonpdx.com">Green Dragon</a> on Wednesday, April 3rd starting at 7 pm. We&#8217;d love to buy you a beer, hang out and talk WordPress and web development for a couple hours.</p>
<p>If you&#8217;re interested, head on over to <a href="http://10up-social.eventbrite.com/">our Eventbrite page</a> and pick up a free ticket. Hope to see you there!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1638/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1638/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1638&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/04/01/april-3rd-hang-out-with-10up-in-portland/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d1759b1c669981b7c52ec9a97d19e6bd?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jeremyfelt</media:title>
		</media:content>
	</item>
		<item>
		<title>Recap It&#8217;s Tool Time 4 Tools You Cannot&#8230;</title>
		<link>http://pdxwp.com/2013/03/17/recap-its-tool-time-4-tools-you-cannot/</link>
		<comments>http://pdxwp.com/2013/03/17/recap-its-tool-time-4-tools-you-cannot/#comments</comments>
		<pubDate>Mon, 18 Mar 2013 01:31:11 +0000</pubDate>
		<dc:creator>Zack Tollman</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[developer meetup]]></category>
		<category><![CDATA[grunt]]></category>
		<category><![CDATA[php codesniffer]]></category>
		<category><![CDATA[recap]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[wp-cli]]></category>
		<category><![CDATA[xdebug]]></category>

		<guid isPermaLink="false">http://pdxwp.com/2013/03/17/recap-its-tool-time-4-tools-you-cannot/</guid>
		<description><![CDATA[Recap: It&#8217;s Tool Time &#8211; 4 Tools You Cannot Live Without At the latest PDXWP dev meetup, we had four speakers discuss four powerful development tools as part of &#8220;It&#8217;s Tool Time: 4 Tools You Cannot Live Without&#8221;. We had roughly 45 people attend the meetup, which is our best attended dev meetup to date. [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1630&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<h1>Recap: It&#8217;s Tool Time &#8211; 4 Tools You Cannot Live Without</h1>
<p>At the latest PDXWP dev meetup, we had four speakers discuss four powerful development tools as part of &#8220;It&#8217;s Tool Time: 4 Tools You Cannot Live Without&#8221;. We had roughly 45 people attend the meetup, which is our best attended dev meetup to date.</p>
<h2>Xdebug &#8211; Taylor Dewey (@tddewey)</h2>
<p>We started the evening with 10up&#8217;s Taylor Dewey discussing the insight into a project that one can gain from using <a href="http://xdebug.org/" title="http://xdebug.org/">Xdebug</a>, a debugging and profiling utility for PHP. He started by demonstrating the differences between a PHP error report with and without Xdebug. He further illustrated the utility of Xdebug by showing the difference between a <code>var_dump</code> of <code>WP_Query</code> with and without Xdebug. Taylor concluded his talk by demonstrating &#8220;step debugging&#8221; with a live execution of Xdebug. He showed how one can set breakpoints, inspect variables, and step through code using <a href="http://www.jetbrains.com/phpstorm/" title="http://www.jetbrains.com/phpstorm/">PHPStorm&#8217;s</a> Xdebug integration. While it is impossible to bundle Taylor&#8217;s enthusiasm and demonstration in a slide deck, he has generously <a href="http://tdd.li/2013-wp-pdx-xdebug/assets/fallback/" title="http://tdd.li/2013-wp-pdx-xdebug/assets/fallback/">provided his slides for us</a>.</p>
<p><em>Relevant Links</em>:</p>
<ul>
<li><a href="http://xdebug.org/docs" title="http://xdebug.org/docs">Installing Xdebug</a>
</li>
<li><a href="http://www.bluestatic.org/software/macgdbp/" title="http://www.bluestatic.org/software/macgdbp/">MacGDBp</a> (Xdebug client for OS X)
</li>
<li><a href="http://www.jetbrains.com/phpstorm/webhelp/configuring-xdebug.html" title="http://www.jetbrains.com/phpstorm/webhelp/configuring-xdebug.html">PHPStorm Xdebug integration</a>
</li>
<li><a href="http://netbeans.org/kb/docs/php/configure-php-environment-mac-os.html" title="http://netbeans.org/kb/docs/php/configure-php-environment-mac-os.html">Netbeans Xdebug integration</a>
</li>
</ul>
<h2>WordPress Command Line Interface &#8211; Daniel Bachhuber (<a href='http://pdxwp.com/mentions/danielbachhuber/' class='mention'>@danielbachhuber</a>)</h2>
<p>Daniel Bachhuber of Automattic, followed Taylor&#8217;s talk with a discussion and demonstration of <a href="http://wp-cli.org" title="http://wp-cli.org">the WordPress Command Line Interface (WP-CLI)</a>. WP-CLI is a powerful tool for manipulating WordPress from the command line. The tool allows you to execute arbitrary code, perform CRUD operations on content, manage themes and plugins, export data, scaffold projects, amongst many other things. Using his own WP-CLI powered slides as an example, Daniel demonstrated how to create custom extensions for WP-CLI. Daniel concluded his talk by demonstrating some of the functions discussed above. Daniel has also provided his <a href="http://danielbachhuber.com/2013/03/11/pdxwp-wp-cli-is-for-wp-devs-on-a-deadline/" title="http://danielbachhuber.com/2013/03/11/pdxwp-wp-cli-is-for-wp-devs-on-a-deadline/">slides and example custom WP-CLI extension</a>.</p>
<p><em>Relevant Links</em></p>
<ul>
<li><a href="http://wp-cli.org/" title="http://wp-cli.org/">Installing WP-CLI</a>
</li>
<li><a href="https://github.com/wp-cli/wp-cli" title="https://github.com/wp-cli/wp-cli">WP-CLI on Github</a>
</li>
<li><a href="http://www.slideshare.net/GetSource/manage-wordpress-with-awesome-using-wp-cli" title="http://www.slideshare.net/GetSource/manage-wordpress-with-awesome-using-wp-cli">Manage WordPress with Awesome using wp-cli</a> (WordCamp Vegas 2012 presentation by Mike Schroder)
</li>
<li><a href="http://wp.tutsplus.com/tutorials/using-wp-cli-for-fun-and-profit/" title="http://wp.tutsplus.com/tutorials/using-wp-cli-for-fun-and-profit/">Using wp-cli for Fun and Profit</a> (slightly outdated introduction by the project&#8217;s lead contributor)
</li>
</ul>
<h2>PHP Codesniffer &#8211; Weston Ruter (@westonruter)</h2>
<p>For the third talk of the night, X-team&#8217;s Weston Ruter presented on <a href="http://pear.php.net/package/PHP_CodeSniffer/redirected" title="http://pear.php.net/package/PHP_CodeSniffer/redirected">PHP Codesniffer (phpcs)</a>. phpcs tokenizes PHP to validate it against a set of coding standards. Weston discussed how his team uses a <a href="https://github.com/x-team/WordPress-Coding-Standards" title="https://github.com/x-team/WordPress-Coding-Standards">custom set of WordPress &#8220;sniffs&#8221;</a>, or individual code standard rules, to maintain a rigorous standard for their code. After a brief introduction to installing phpcs via PEAR, Weston demonstrated a number of sniffs that his team utilized, including validation of operator spacing, double quote usage, indentation, extra whitespace, array declaration, discouraged functions, and escaping output. Weston topped off his presentation by discussing how his team uses their set of sniffs as a git <a href="http://git-scm.com/book/en/Customizing-Git-Git-Hooks" title="http://git-scm.com/book/en/Customizing-Git-Git-Hooks">pre-commit hook</a> to validate code before committing. Weston has shared his slides as a <a href="http://git-scm.com/book/en/Customizing-Git-Git-Hooks" title="http://git-scm.com/book/en/Customizing-Git-Git-Hooks">Google Presentation</a>.</p>
<p><em>Relevant Links</em>:</p>
<ul>
<li><a href="https://github.com/x-team/WordPress-Coding-Standards#readme" title="https://github.com/x-team/WordPress-Coding-Standards#readme">Installing PHPCS with X-team&#8217;s WordPress Coding Standards Sniffs</a>
</li>
<li><a href="http://codex.wordpress.org/WordPress_Coding_Standards" title="http://codex.wordpress.org/WordPress_Coding_Standards">WordPress Coding Standards</a>
</li>
<li><a href="https://gist.github.com/westonruter/5135563" title="https://gist.github.com/westonruter/5135563">Demo code used in presentation</a>
</li>
<li><a href="https://github.com/mrchrisadams/WordPress-Coding-Standards/commit/8f0b3a65ed483c5fdd48c8479bab6340fd917999#commitcomment-2648181" title="https://github.com/mrchrisadams/WordPress-Coding-Standards/commit/8f0b3a65ed483c5fdd48c8479bab6340fd917999#commitcomment-2648181">Discussion of officially codifying a set of WordPress sniffs</a>
</li>
</ul>
<h2>Grunt &#8211; Nathaniel Taintor (@goldenapples)</h2>
<p>Nathaniel Taintor of Janrain rounded out the evening with an introduction to <a href="http://gruntjs.com/" title="http://gruntjs.com/">Grunt</a>. Like Weston, Nathaniel discussed how his team uses Grunt to meet their development goals. Concatenating Javascript files is a tough problem to solve. Nathaniel discussed his team&#8217;s search for a solution that still works with WordPress&#8217; enqueues system, plays well with third part plugins, as well as for handles of preprocessor languages (e.g., coffee script), minification and concatenation. Nathaniel reported that Grunt, a &#8220;task runner&#8221; module for NodeJS solved his problems. He also briefly touched on three other solutions that he explored before settling on Grunt (<a href="https://github.com/wycks/WordPhing" title="https://github.com/wycks/WordPhing">WordPhing</a>, <a href="http://forge.thethemefoundry.com/" title="http://forge.thethemefoundry.com/">Forge</a>, <a href="http://yeoman.io/" title="http://yeoman.io/">Yeoman</a>). Nathaniel&#8217;s slides are forthcoming.</p>
<p><em>Relevant Links</em>:</p>
<ul>
<li><a href="http://gruntjs.com/getting-started" title="http://gruntjs.com/getting-started">Install Grunt</a>
</li>
<li><a href="http://nodejs.org/" title="http://nodejs.org/">Install NodeJS and npm</a>
</li>
<li><a href="http://blog.jquery.com/2013/01/23/a-site-to-behold-open-content-design-comes-to-jquery-2/" title="http://blog.jquery.com/2013/01/23/a-site-to-behold-open-content-design-comes-to-jquery-2/">jQuery.com powered by git, grunt, and WordPress</a></li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pdxwpcom.wordpress.com/1630/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pdxwpcom.wordpress.com/1630/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pdxwp.com&#038;blog=37900105&#038;post=1630&#038;subd=pdxwpcom&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pdxwp.com/2013/03/17/recap-its-tool-time-4-tools-you-cannot/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/980df66b142b2a067b3f8b67b04352de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tollmanz</media:title>
		</media:content>
	</item>
	</channel>
</rss>
