<?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/"
	>

<channel>
	<title>alexking.org &#187; WordPress</title>
	<atom:link href="http://alexking.org/blog/topic/wordpress/feed" rel="self" type="application/rss+xml" />
	<link>http://alexking.org</link>
	<description>Alex King's blog - software, photography, sports, etc.</description>
	<lastBuildDate>Mon, 26 Jul 2010 04:43:36 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>WordPress HelpCenter is Hiring (Again!)</title>
		<link>http://alexking.org/blog/2010/07/20/hiring-wordpress-developer</link>
		<comments>http://alexking.org/blog/2010/07/20/hiring-wordpress-developer#comments</comments>
		<pubDate>Tue, 20 Jul 2010 17:38:59 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4494</guid>
		<description><![CDATA[I&#8217;m very pleased that my WordPress HelpCenter team is ready to grow again and we&#8217;re looking for a top-notch WordPress developer to join our team.

We&#8217;re looking for someone with a broad range of WordPress and web development (PHP, XHTML, CSS, JavaScript) experience, comfortable working in a standard web hosting environment, and in particular someone with [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m very pleased that my <a href="http://wphelpcenter.com">WordPress HelpCenter</a> team is ready to grow again and we&#8217;re looking for a top-notch WordPress developer to join our team.</p>
<p class="center"><a href="http://wphelpcenter.com" title="WordPress HelpCenter"><img src="http://farm3.static.flickr.com/2682/4330699897_d58f015abd_o.png" width="349" height="66" alt="WordPress HelpCenter" /></a></p>
<p>We&#8217;re looking for someone with a broad range of WordPress and web development (PHP, XHTML, CSS, JavaScript) experience, comfortable working in a standard web hosting environment, and in particular someone with outstanding communication skills.</p>
<p>We welcome local Denver-area candidates to join us in our office or remote developers that have a quiet home office environment.</p>
<p>Providing great service is our number one priority, and we need someone to whom this is inherent. We have a responsibility to every <a href="http://wphelpcenter.com/affiliates/">affiliate plugin and theme developer</a> who puts their trust in us and to the WordPress community as a whole.</p>
<p>See the <a href="http://wphelpcenter.com/jobs/">job posting</a> on the HelpCenter web site for more details and to apply. This position is open immediately and we hope to fill it within the next 30 days.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4494&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/07/20/hiring-wordpress-developer/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to Get the Most From WordCamp</title>
		<link>http://alexking.org/blog/2010/07/06/how-to-get-the-most-from-wordcamp</link>
		<comments>http://alexking.org/blog/2010/07/06/how-to-get-the-most-from-wordcamp#comments</comments>
		<pubDate>Wed, 07 Jul 2010 01:31:20 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4471</guid>
		<description><![CDATA[With WordCamp Boulder coming up at the end of the week (still some tickets available), I thought it might be a good time to publish the observations and tips I&#8217;ve gleaned as a WordCamp attendee, speaker, sponsor and organizer. 
If I could only share one tip, it would be this: Take responsibility for your WordCamp [...]]]></description>
			<content:encoded><![CDATA[<p>With <a href="http://2010.boulder.wordcamp.org" rel="external">WordCamp Boulder</a> coming up at the end of the week (still some tickets available), I thought it might be a good time to publish the observations and tips I&#8217;ve gleaned as a WordCamp attendee, speaker, sponsor and organizer. </p>
<p>If I could only share one tip, it would be this: <strong>Take responsibility for your WordCamp experience.</strong></p>
<p>Everything else I&#8217;m listing below can be summed up in that one piece of advice (and is true for just about any conference or meetup). It manifests itself in a variety of ways.</p>
<ul>
<li>If you aren&#8217;t enjoying/learning where you are, move. We try to cater to all attendees throughout the day, but not all sessions will interest everyone. There are normally multiple sessions going on at once, people hanging out in the halls, people at the Genius Bar or developer garages &#8211; if the session you&#8217;re in isn&#8217;t to your liking, take action and see what else is going on.</li>
<li>Ask questions in sessions. Speakers love the opportunity to share things they know will be of value to their audience. They know they are doing this when they are addressing questions.</li>
<li>Don&#8217;t be shy about approaching and talking to speakers. Most speakers I know really enjoy feedback, related discussions, etc. Plus, it gives them a nice ego boost.</li>
<li>Aggressively seek out people you want to connect with. At a conference I often get more out of conversations at random times and places than I do out of the structured sessions. If there is someone you want to talk to, go find them &#8211; don&#8217;t regret not doing so afterward. The corollary to this is to be respectful if they are busy or for some reason aren&#8217;t interested in conversing with you.</li>
<li>Find your own time for networking. Don&#8217;t rely on structured time to connect with people. Join a conversation between sessions, talk with people next to you. Chat up someone that asked a good question in a session.</li>
<li>Lastly, Remember that this is a community event organized by community volunteers with the help of local sponsors. We try hard to <a href="http://2010.boulder.wordcamp.org/2010/06/14/please-complete-our-interest-survey/" rel="external">get input</a> from the attendees and structure the event accordingly. I can&#8217;t speak for other WordCamps, but I know that last year&#8217;s WordCamp Denver and this year&#8217;s WordCamp Boulder are just about break-even propositions for us. Please temper your praise and constructive feedback accordingly.</li>
</ul>
<p>It&#8217;s been great to see how WordCamps have grown over the years and I&#8217;m very pleased to be able to help organize the Denver/Boulder editions. Keep up the community spirit and have a great time.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4471&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/07/06/how-to-get-the-most-from-wordcamp/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>WordCamp Boulder (Denver) Tickets &#8211; 1 Week Left</title>
		<link>http://alexking.org/blog/2010/07/02/wordcamp-boulder-denver-tickets-1-week-left</link>
		<comments>http://alexking.org/blog/2010/07/02/wordcamp-boulder-denver-tickets-1-week-left#comments</comments>
		<pubDate>Fri, 02 Jul 2010 12:20:11 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4466</guid>
		<description><![CDATA[The tickets for WordCamp Boulder (Denver) are starting to get a bit scarce with a week left before the event. There are only 16 tickets left that include a t-shirt and lunch, so act quickly to get yours.
There are also micro-sponsor tickets available for those wanting to do a little extra for the community and [...]]]></description>
			<content:encoded><![CDATA[<p>The tickets for <a href="http://2010.boulder.wordcamp.org/" rel="external">WordCamp Boulder (Denver)</a> are starting to get a bit scarce with a week left before the event. There are <strong>only 16 tickets left</strong> that include a t-shirt and lunch, so <a href="http://wordcampcolorado.eventbrite.com/" rel="external">act quickly</a> to get yours.</p>
<p>There are also micro-sponsor tickets available for those wanting to do a little extra for the community and participate in the speaker/sponsor dinner on 9th.</p>
<p>If you&#8217;ve already got your ticket, make sure to grab a <a href="http://2010.boulder.wordcamp.org/badges/" rel="external">badge</a> as well.</p>
<p class="center"><a href="http://2010.boulder.wordcamp.org"><img src="http://2010.boulder.wordcamp.org/files/2010/06/wcb-sponsor.png" title="I'm Sponsoring WordCamp Boulder 2010" /></a></p>
<p>We are setting up a <a href="http://2010.boulder.wordcamp.org/genius-bar/" rel="external">Genius Bar</a> at WordCamp this year, and I&#8217;m very pleased that members of our <a href="http://wphelpcenter.com">WordPress HelpCenter</a> team will be there to help out. If you&#8217;ve got WordPress questions big or small, make sure to visit the Genius Bar.</p>
<p>A big thanks to our sponsors for the event as well &#8211; see the full list in the sidebar on the <a href="http://2010.boulder.wordcamp.org/" rel="external">official site</a>. As with ever WordCamp, the contributions of the sponsors are literally making the event happen.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4466&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/07/02/wordcamp-boulder-denver-tickets-1-week-left/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Crowd Favorite is Hiring: Sr. Developer</title>
		<link>http://alexking.org/blog/2010/06/23/crowd-favorite-is-hiring-sr-developer</link>
		<comments>http://alexking.org/blog/2010/06/23/crowd-favorite-is-hiring-sr-developer#comments</comments>
		<pubDate>Wed, 23 Jun 2010 15:10:46 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4444</guid>
		<description><![CDATA[I&#8217;m looking for a sharp web developer to join my team in our Denver office at Crowd Favorite. I want to find someone with a relatively, broad range of experience and skills &#8211; if you&#8217;ve been building cool stuff for the last few years, you&#8217;ve probably got it. We are looking for the right technical, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m looking for a sharp web developer to join my team in our Denver office at <a href="http://crowdfavorite.com">Crowd Favorite</a>. I want to find someone with a relatively, broad range of experience and skills &#8211; if you&#8217;ve been building cool stuff for the last few years, you&#8217;ve probably got it. We are looking for the right technical, cultural and geographic fit for our team.</p>
<p>You&#8217;ll get to work on a bunch of interesting and diverse projects. Some of our recent projects have included:</p>
<ul>
<li>Advanced WordPress websites, plugins, themes, integrations and products. We build a <em>lot</em> of stuff with WordPress.</li>
<li>A site migration tool for importing legacy websites into WordPress multi-site (complete with testing routines).</li>
<li>Facebook integration and platform development.</li>
<li>A web service for processing gobs of data running on Amazon&#8217;s cloud. The system is comprised of 10 different individual components, all talking to each other&#8217;s web services.</li>
<li>Customizable financial dashboards (web application).</li>
<li>An integration into numerous web services to power a custom web application that provides a different kind of productized web analytics.</li>
</ul>
<p>We have a casual, collaborative team environment. You can choose your OS and development tools (all of our systems are cross-platform or web based) and get to have a say in development approaches, policies, best practices, etc.</p>
<p>If these kinds of things sound interesting to you, <a href="http://crowdfavorite.com/jobs/">we&#8217;d like to hear from you</a>.</p>
<hr />
<p>We also have two internship positions (developer and designer/front-end developer) available &#8211; if you want to learn about building with WordPress, Open Source, web standards and modern best practices, we can give you some great experience building things people actually use.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4444&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/06/23/crowd-favorite-is-hiring-sr-developer/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 3.0 Upgrade Help</title>
		<link>http://alexking.org/blog/2010/06/23/wordpress-3-0-upgrade-help</link>
		<comments>http://alexking.org/blog/2010/06/23/wordpress-3-0-upgrade-help#comments</comments>
		<pubDate>Wed, 23 Jun 2010 15:06:11 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4456</guid>
		<description><![CDATA[I&#8217;ve been keeping an eye on what folks are saying about their WordPress 3.0 upgrade experiences and it appears that most folks are finding the upgrade to be a pretty smooth sailing experience. Kudos to everyone who contributed to 3.0, this is not a small accomplishment (especially considering the fundamental changes in 3.0).
If you do [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been keeping an eye on what folks are saying about their WordPress 3.0 upgrade experiences and it appears that most folks are finding the upgrade to be a pretty smooth sailing experience. Kudos to <a href="http://wordpress.org/development/2010/06/thelonious/" rel="external">everyone who contributed to 3.0</a>, this is not a small accomplishment (especially considering the fundamental changes in 3.0).</p>
<p>If you do need any help upgrading to WordPress 3.0, don&#8217;t hesitate to contact my <a href="http://wphelpcenter.com">WordPress HelpCenter</a> team. You can call them directly at: (303) 395-1346 from 9am-8pm US/Eastern M-F or email anytime to help@wphelpcenter.com.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4456&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/06/23/wordpress-3-0-upgrade-help/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>WordPress Designer and Developer Internships</title>
		<link>http://alexking.org/blog/2010/06/17/wordpress-designer-and-developer-internships</link>
		<comments>http://alexking.org/blog/2010/06/17/wordpress-designer-and-developer-internships#comments</comments>
		<pubDate>Thu, 17 Jun 2010 15:33:46 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4428</guid>
		<description><![CDATA[We currently have two internships available at Crowd Favorite. We are looking for a couple of bright, motivated folks to join the team and help us build great stuff for WordPress. These positions are both in our downtown Denver office, giving you the opportunity to learn from and work with our team of experienced WordPress [...]]]></description>
			<content:encoded><![CDATA[<p>We currently have <a href="http://crowdfavorite.com/jobs/">two internships available</a> at <a href="http://crowdfavorite.com">Crowd Favorite</a>. We are looking for a couple of bright, motivated folks to join the team and help us build great stuff for WordPress. These positions are both in our downtown Denver office, giving you the opportunity to learn from and work with our team of experienced WordPress professionals.</p>
<p>If you&#8217;re interested in learning about WordPress design or development, or want to get a good foundation in design/development for Open Source and web standards, this is a great opportunity. For the right individual, this position could lead to full-time employment.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4428&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/06/17/wordpress-designer-and-developer-internships/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interviewed on WP Community Podcast</title>
		<link>http://alexking.org/blog/2010/06/15/interviewed-on-wp-community-podcast</link>
		<comments>http://alexking.org/blog/2010/06/15/interviewed-on-wp-community-podcast#comments</comments>
		<pubDate>Wed, 16 Jun 2010 03:09:10 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[Interviews]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4426</guid>
		<description><![CDATA[I was interviewed on the WP Community podcast by hosts Joost De Valk and Frederick Townes. We covered a number of topics &#8211; hopefully the content is of interest (and sorry about the ads).
You can stream or download the podcast here.
]]></description>
			<content:encoded><![CDATA[<p>I was <a href="http://wp-community.org/2010/06/15/king-reason/" rel="external">interviewed on the WP Community podcast</a> by hosts <a href="http://yoast.com" rel="external">Joost De Valk</a> and <a href="http://www.w3-edge.com/" rel="external">Frederick Townes</a>. We covered a number of topics &#8211; hopefully the content is of interest (and sorry about the ads).</p>
<p>You can stream or download the podcast <a href="http://www2.webmasterradio.fm/wordpress-community-podcast/2010/06/15/his-name-is-king-for-a-reason/" rel="external">here</a>.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4426&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/06/15/interviewed-on-wp-community-podcast/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordCamp Boulder</title>
		<link>http://alexking.org/blog/2010/06/14/wordcamp-boulder</link>
		<comments>http://alexking.org/blog/2010/06/14/wordcamp-boulder#comments</comments>
		<pubDate>Mon, 14 Jun 2010 23:18:20 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4417</guid>
		<description><![CDATA[The tickets for WordCamp Boulder 2010 went on sale today. The discounted early bird tickets have been flying off the shelves &#8211; it&#8217;s great to see such an enthusiastic response from our local tech community.
I wanted to publish a quick Q &#038; A to answer a few things I&#8217;ve seen circling around:

What is included in [...]]]></description>
			<content:encoded><![CDATA[<p>The tickets for <a href="http://2010.boulder.wordcamp.org" rel="external">WordCamp Boulder 2010</a> went on sale today. The discounted early bird tickets have been flying off the shelves &#8211; it&#8217;s great to see such an enthusiastic response from our local tech community.</p>
<p>I wanted to publish a quick Q &#038; A to answer a few things I&#8217;ve seen circling around:</p>
<dl>
<dt>What is included in the ticket price?</dt>
<dd>Your ticket gives you access to all event sessions, the Genius Bar (staffed in part by <a href="http://wphelpcenter.com">WordPress HelpCenter</a>) the after-party as well as lunch and a snazzy t-shirt.</dd>
<dt>Will the event sell out?</dt>
<dd>It&#8217;s hard to say for sure, but last year&#8217;s WordCamp (the first in the Denver/Boulder area) sold out and we sadly had to turn folks away at the doors if they didn&#8217;t have a ticket. We&#8217;ve already seen that this year&#8217;s event has a lot more inertia than last year&#8217;s did. I do expect we will sell out and recommend buying a ticket ASAP.</dd>
<dt>Where can I buy a ticket?</dt>
<dd><a href="http://wordcampcolorado.eventbrite.com/" rel="external">Right here</a>.</dd>
<dt>How can I get the latest news about WordCamp Boulder on Twitter?</dt>
<dd>Follow <a href="http://twitter.com/wordcampboulder" rel="external">@WordCampBoulder</a></dd>
<dt>What happened to WordCamp Denver?</dt>
<dd>We&#8217;ve moved it to Boulder this year. There are great tech communities in both Denver and Boulder, it just made sense to have it in Boulder this year since we had it in Denver last year.</dd>
<dt>Does this mean it will be in Denver next year?</dt>
<dd>That&#8217;s the current thinking, though we are always happy to hear feedback from the community about location, venue, content, etc. for the event. After all, it is an event for the community &#8211; we want your help in shaping it.</dd>
<dt>How can I provide useful feedback to help shape this year&#8217;s WordCamp?</dt>
<dd>We have a <a href="http://polldaddy.com/s/0FF04C4ACF55FF0B" rel="external">survey</a> you can fill out. Also, feel free to <a href="http://2010.boulder.wordcamp.org/contact/" rel="external">get in touch</a> with any thoughts, idea and/or concerns you want to make sure we take into consideration.</dd>
<dt>I want to help, what can I do?</dt>
<dd>We can aways use more great volunteers, <a href="http://2010.boulder.wordcamp.org/speakers/" rel="external">speakers</a> and <a href="http://2010.boulder.wordcamp.org/sponsors/" rel="external">sponsors</a>. Please <a href="http://2010.boulder.wordcamp.org/contact/" rel="external">get in touch</a> and we&#8217;ll be glad to work with you.</dd>
<dt>What can you tell me a little about the venue?</dt>
<dd>We&#8217;re going to try <a href="http://2010.boulder.wordcamp.org/locations/" rel="external">something a little different</a> this year. Our main stage will be at the <a href="http://bouldertheather.com" rel="external">Boulder Theater</a>. This will be the location for morning check in and for the larger presentations. We will also be having smaller discussion and technical sessions at the <a href="http://techstars.org" rel="external">TechStars Bunker</a> and <a href="http://atlaspurveyors.com" rel="external">Atlas Purveyors</a>. We are hoping that the addition of these smaller venues will allow for those some sessions to be more interactive and hands-on.</dd>
<dt>Is the WiFi going to work this year?</dt>
<dd>We sure hope so. We can&#8217;t promise anything, but we have already taken steps to try and ensure we have great connectivity this year. Also, we should have better cell signal available in these venues.</dd>
<dt>Will there be a live stream of the event?</dt>
<dd>Probably not. We do plan to have videos posted on WordPress.tv after the event.</dd>
</dl>
<p>I&#8217;m quite looking forward to the event. We learned a great deal last year and received a bunch of valuable feedback &#8211; hopefully that will manifest itself in a stellar WordCamp Boulder 2010.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4417&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/06/14/wordcamp-boulder/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Twitter Tools and OAuth Continued</title>
		<link>http://alexking.org/blog/2010/06/13/twitter-tools-and-oauth-continued</link>
		<comments>http://alexking.org/blog/2010/06/13/twitter-tools-and-oauth-continued#comments</comments>
		<pubDate>Sun, 13 Jun 2010 21:43:33 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4415</guid>
		<description><![CDATA[I didn&#8217;t post many details in my previous update, and I&#8217;d like to visit some of them now. At the time that post was written, it looked like the user experience for Twitter Tools was going to look something like this:

Download, install and activate Twitter Tools.
Click a link to twitter.com where you would have to [...]]]></description>
			<content:encoded><![CDATA[<p>I didn&#8217;t post many details in my <a href="http://alexking.org/blog/2010/06/10/twitter-tools-oauth-update">previous update</a>, and I&#8217;d like to visit some of them now. At the time that post was written, it looked like the user experience for Twitter Tools was going to look something like this:</p>
<ol>
<li>Download, install and activate Twitter Tools.</li>
<li>Click a link to twitter.com where you would have to <a href="http://dev.twitter.com/apps/new" rel="external">register your WordPress site as an application</a>.</li>
<li>Take the two keys provided to you and go back to the Twitter Tools settings page. Copy-paste those keys into fields in the Twitter Tools admin page.</li>
<li>Click another link to again visit twitter.com, this time to do the OAuth handshake and get your authentication tokens.</li>
<li>Return to your WordPress admin and continue tweaking your settings, etc.</li>
</ol>
<p>If you were able to succeed in these steps, everything would be set up.</p>
<p>The fact that I as a developer look at those steps and groan was an immediate red flag to me. I know all too well from years of email support questions that not all WordPress users are highly technical and a 4 step process with 2 steps that make you change sites and one that includes a copy-paste dance isn&#8217;t something that is going to make people happy.</p>
<p>Some people have suggested that <a href="http://alexking.org/blog/2010/06/10/twitter-tools-oauth-update#comment-136426">this is just how it is and I have to deal with it</a>. I disagree. When I see something that&#8217;s too hard I want to fix it, not perpetuate it. I sent an email outlining my concerns to the Twitter API team. They are smart folks, clearly they had been working on solutions for this situation as well. They have posted a proposed <a href="http://groups.google.com/group/twitter-development-talk/browse_thread/thread/c18ade9d86c8b239" rel="external">outline of a different workflow</a> that looks to be an improvement over the previous situation. It&#8217;s an improvement, but it&#8217;s not enough.</p>
<p>I added the following to the thread:</p>
<blockquote><p>This is excellent news and sounds like a much better user experience  than the previously discussed options. I would like to suggest it be taken one step further. Could the encoded string with the keys be returned programatically to the Open Source application instead of asking the user to copy/paste? This way the user experience would be very similar to a standard OAuth transaction.</p></blockquote>
<p>I really hope they make this change and provide the string with the tokens via a callback method/URL and allow us to completely skip the copy-paste step.</p>
<p>I don&#8217;t pretend to have thought through every situation that the Twitter API team is having to consider here. I&#8217;m focused squarely on my own little use case. My goal is simple: make the process of installing and configuring Twitter Tools as easy as possible for my WordPress users.</p>
<p>With what they have outlined and my suggestion above, I am hopeful that I will be able to support a user experience that looks something like this:</p>
<ol>
<li>Download, install and activate Twitter Tools.</li>
<li>Click a button in the WordPress admin that registers your site with twitter.com and returns the necessary tokens to Twitter Tools.</li>
<li>Click another link to again visit twitter.com, this time to do the OAuth handshake and get your authentication tokens.</li>
<li>Return to your WordPress admin and continue tweaking your settings, etc.</li>
</ol>
<p>The OAuth step is going to be required &#8211; there isn&#8217;t a way around that (and shouldn&#8217;t be). However I want the rest of the connection stuff should be as painless as possible for my users.</p>
<p>If you care about this, you might want to drop the Twitter API team a line (api@twitter.com or @twitterAPI) and encourage them to go one step further in their proposed implementation so that Twitter Tools can give you the easiest possible configuration experience.</p>
<p>My guess is that the <a href="http://countdowntooauth.com/" rel="external">OAuth deadline</a> will be extended while this new API is being implemented and tested. I am currently holding off on my Twitter Tools integration until I see where things end up.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4415&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/06/13/twitter-tools-and-oauth-continued/feed</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Twitter Tools OAuth Update</title>
		<link>http://alexking.org/blog/2010/06/10/twitter-tools-oauth-update</link>
		<comments>http://alexking.org/blog/2010/06/10/twitter-tools-oauth-update#comments</comments>
		<pubDate>Thu, 10 Jun 2010 16:21:13 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4407</guid>
		<description><![CDATA[I&#8217;ve finished researching the changes needed to integrate OAuth into Twitter Tools. The code changes are pretty straightforward and there is plenty of prior art and examples out there to reference. The technical implementation isn&#8217;t a problem.
My concern is with the user experience of the initial install and set-up of the plugin. This would take [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve finished researching the changes needed to integrate OAuth into <a href="http://crowdfavorite.com/wordpress/plugins/twitter-tools/">Twitter Tools</a>. The code changes are pretty straightforward and there is plenty of prior art and examples out there to reference. The technical implementation isn&#8217;t a problem.</p>
<p>My concern is with the user experience of the initial install and set-up of the plugin. This would take a pretty big hit if I implement OAuth according to my best understanding of the required guidelines. I&#8217;m exploring some other options to see if I can find a good way to reduce the required steps and keep a nice simple user experience.</p>
<p>Regardless, I still plan to have something ready for public release before the <a href="http://countdowntooauth.com" rel="external">deadline</a> &#8211; though time is getting a little tight.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4407&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/06/10/twitter-tools-oauth-update/feed</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>You&#8217;re Welcome</title>
		<link>http://alexking.org/blog/2010/05/31/youre-welcome</link>
		<comments>http://alexking.org/blog/2010/05/31/youre-welcome#comments</comments>
		<pubDate>Tue, 01 Jun 2010 02:59:09 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Rants]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4380</guid>
		<description><![CDATA[This sort of thing frustrates me to no end:

Ms. Bates, your carefully chosen words say volumes.
Not to confuse people with the facts, but not only does Twitter Tools give you fine grain control over your decision to send (or not send) each post to Twitter, it even has a feature that prevents posts from being [...]]]></description>
			<content:encoded><![CDATA[<p>This sort of thing frustrates me to no end:</p>
<p class="center"><img src="http://alexking.org/wp/wp-content/uploads/2010/05/Picture-2.png" alt="Annoying" title="Annoying" width="357" height="378" /></p>
<p>Ms. Bates, your carefully chosen words say volumes.</p>
<p>Not to confuse people with the facts, but not only does Twitter Tools give you fine grain control over your decision to send (or not send) <em>each post</em> to Twitter, it even has a feature that prevents posts from being tweeted if they were published before you installed Twitter Tools. Could there be a bug? Sure (though it&#8217;s unlikely that I wouldn&#8217;t have heard about it before now), but that&#8217;s not really the point is it?</p>
<p>The &#8220;don&#8217;t tweet old posts&#8221; feature was <a href="http://alexking.org/blog/2008/04/13/twitter-tools-12b1">added in version 1.2b1 back in 2008</a>. It was added solely because people requested it; it certainly wasn&#8217;t something I needed &#8211; just trying to make things better for the WordPress community.</p>
<p>Of course for every group of people you satisfy by adding a feature, you&#8217;ll have an equal number of people requesting the opposite:</p>
<p class="center"><a href="http://wordpress.org/support/topic/395610"><img src="http://alexking.org/wp/wp-content/uploads/2010/05/Picture-5-300x95.png" alt="Can&#039;t make everyone happy" title="Can&#039;t make everyone happy" width="300" height="95" class="alignnone size-medium wp-image-4382" /></a></p>
<p>The joys of building software and giving it away for free.</p>
<hr />
<p>The irony of course is that I was getting set to start coding on a rewrite of Twitter Tools this evening (since there is a <a href="http://countdowntooauth.com/" rel="external">deadline looming</a>), but comments like the ones above really take the wind out of my sails.</p>
<p>The combination of an evolving set of best-practices in WordPress core and extremely high expectations from the WordPress user community has plugin developers in a tough spot these days.</p>
<p>I hired someone this summer for the sole purpose of updating all of our publicly released plugins/themes from the best practices of the time to the best practices in WP 3.0 (along with a few added features, bug fixes and enhancements). That&#8217;s the entire job. I expect it to take about 4-6 months to update the ~30 plugins/themes in question.</p>
<p>That&#8217;s an expense I decided we should take on for the good of the community. The cost of the developer&#8217;s salary alone is <em>way</em> more than the total donations received on all of the plugins (over a 5-6 year period) &#8211; not to mention the time spent creating them in the first place, updating them, etc.</p>
<p>There are many things in the WordPress community that are great. There are also many things that need to continue to evolve and improve.</p>
<p>Enough ranting, I&#8217;ll go back to working on something more productive&#8230;</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4380&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/05/31/youre-welcome/feed</wfw:commentRss>
		<slash:comments>26</slash:comments>
		</item>
		<item>
		<title>Why Custom Post Types are Great</title>
		<link>http://alexking.org/blog/2010/05/19/why-custom-post-types-are-great</link>
		<comments>http://alexking.org/blog/2010/05/19/why-custom-post-types-are-great#comments</comments>
		<pubDate>Wed, 19 May 2010 15:41:50 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4343</guid>
		<description><![CDATA[WordPress 3.0 will introduce a simple programatic way for developers to create custom post types. I&#8217;ve seen people talking at length about this feature, but most discussion focuses on how you can have a custom display for certain content, support custom URL structures or manage content differently. These things aren&#8217;t new &#8211; they are all [...]]]></description>
			<content:encoded><![CDATA[<p>WordPress 3.0 will introduce a simple programatic way for developers to create <a href="http://justintadlock.com/archives/2010/04/29/custom-post-types-in-wordpress" rel="external">custom post types</a>. I&#8217;ve seen people talking at length about this feature, but most discussion focuses on how you can have a custom display for certain content, support custom URL structures or <a href="http://kovshenin.com/archives/custom-post-types-in-wordpress-3-0/" rel="external">manage content differently</a>. These things aren&#8217;t new &#8211; they are all things you could do previously without too much trouble by using a little custom code with taxonomies or post meta (especially with the <a href="http://carringtontheme.com">Carrington framework</a>).</p>
<p>No, the real power of custom post types is more subtle &#8211; <strong>it removes those posts from default queries</strong>.</p>
<p>Selecting posts based on certain criteria has always been pretty straightforward in WordPress. What has been hard has been excluding that content from all default queries (home, archives, category, feeds, comment feeds, etc.). By using a custom post type, you can easily exclude content from these default queries, and this is a <em>huge</em> win.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4343&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/05/19/why-custom-post-types-are-great/feed</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>Is WordPress a Platform or Product?</title>
		<link>http://alexking.org/blog/2010/05/17/wordpress-platform-or-product</link>
		<comments>http://alexking.org/blog/2010/05/17/wordpress-platform-or-product#comments</comments>
		<pubDate>Mon, 17 May 2010 21:33:03 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4147</guid>
		<description><![CDATA[At Crowd Favorite we get a lot of inquiries from people who are interested in building something with or on WordPress. These potential projects vary greatly in scope and concept &#8211; some are just a couple of days, some are 6 months or more. To make things more complicated, these potential clients often view WordPress [...]]]></description>
			<content:encoded><![CDATA[<p>At <a href="http://crowdfavorite.com">Crowd Favorite</a> we get a lot of inquiries from people who are interested in building something with or on WordPress. These potential projects vary greatly in scope and concept &#8211; some are just a couple of days, some are 6 months or more. To make things more complicated, these potential clients often view WordPress in very different ways. The main difference is fundamental &#8211; do they see WordPress as a platform or as a product?</p>
<p>Some people view WordPress as a CMS platform to build on. They want us to help them create a website, service, etc. and they see WordPress as a platform that their idea can be built on. For these projects we will typically use some existing tools for various features but build customized solutions based on the feature set we work to define with the client. The final solution typically has a smooth and cohesive back-end administrative interface and is logically consistent throughout the feature set.</p>
<p>These projects are typically larger engagements and these clients are typically willing to make a larger investment in the development of their project in exchange for a more cohesive, consistent and robust result.</p>
<p>On the other side of the spectrum are people who come to us viewing WordPress (and the thousands of plugins that themes that are available for it) as a product. These folks typically are looking to create a website with a certain feature set and may already have in mind a collection of existing plugins that they think may be useful for creating these features. They expect the project to be more a matter of configuration than development.</p>
<p>These clients are typically primarily interested in keeping costs down and will trade elegance for expedience.</p>
<p>As you might imagine, these two very divergent approaches can lead to some significant challenges, especially when initially talking to potential clients.</p>
<p>The first thing we do is try to figure out which camp a project falls into. Once we know if it&#8217;s a platform or product project, everything gets quite a bit easier. This can be much more difficult than you might imagine. Our prospective clients typically see WordPress in only one way, while we can see it from many angles given our extensive experience. A number of clients will describe what sounds like a platform implementation, then all of a sudden they may tell us something that swerves onto the product path. The opposite can also be true. We always try to determine this as early in the process as possible, but we&#8217;ve also had rare cases where a project has switched tracks in the middle &#8211; I recommend doing all you can to avoid this.</p>
<p>Once we&#8217;ve established the type of project involved, we have to do a couple of things:</p>
<ol>
<li>determine if the client&#8217;s desired approach will lead to a successful implementation based on their description of the end result</li>
<li>do a finger-in-the-air scope to budget check to make sure they are compatible</li>
<li>determine if we are comfortable building the project as the client desires (we think it could be a product implementation, but there&#8217;s a <a href="http://www.randsinrepose.com/archives/2010/04/26/the_twinge.html" rel="external">Twinge</a>&#8230;)</li>
<li>if we get through all of the aforementioned, create a rough development outline for the purposes of creating an estimate</li>
</ol>
<p>The first part here is the most important. It&#8217;s very important to us that we have a happy client at the end of a project. If we are hearing requirements that all lean towards a platform project but the client is voicing an opinion for a product implementation, that&#8217;s a concern. When everyone is on the same page, the chance of missing expectations is greatly reduced.</p>
<p>For example, if a client wants to do a product implementation but has specific functional requirements for various components and is unwilling to relax those requirements based on existing functionality (in WordPress, a plugin, etc.), then we should really be talking about a platform project instead of a product project.</p>
<p>There are also some significant differences in post-launch support and follow-up development with each approach. We will often engage in an ongoing support and maintenance relationship with clients whom we have developed larger platform sites for. These relationships generally run quite smoothly, with requests for additional features and functionality being built incrementally on top of the foundation we built in the initial implementation phase of the project.</p>
<p>Conversely, for the product projects we engage in, it is more typical that we build the site or service and hand it off to the client to run from there. When the client comes back in the future and wants changes made, the ease of implementation and resulting cost of new features can vary widely based on how these new features can be implemented on the wide variance of approaches utilized by the off-the-shelf plugins that provide many of the features for their site. It&#8217;s also not uncommon for upgrades to a 3rd party plugin to change certain functionality in such a way that it no longer works exactly as desired for the client&#8217;s purposes.</p>
<p>Another challenge with WordPress as a product engagements is managing expectations in regards to 3rd-party plugins and themes. In most cases we will try to budget time to code-review any plugin we include in one of our builds to make sure it is secure and will scale to client&#8217;s needs. This can result in us advising the client not to use the plugin or theme they had intended, or require additional time and cost investment in addressing shortcomings of the plugin or theme. There is also the issue of fixing functional bugs in these plugins.</p>
<p>People who view WordPress as a product will typically expect that any collection of plugins will work elegantly and seemlessly together. Rarely is this the case. Even between experienced WordPress developers you will find preferences for different implementation approaches. Mix in plugins written by developers that do not have extensive WordPress experience and you can end up trying to weld the transmission from a 57 Chevy to a tricycle.</p>
<p>The important thing for us from a project perspective is to be honest and consistent with our clients. They may not want to hear than plugin X and plugin Y aren&#8217;t going to be compatible, but it&#8217;s a lot better to tell them up front than to have to tell them late in the development cycle when you discover that you&#8217;ve run out of duct tape.</p>
<p>While you can probably tell from my descriptions here that we prefer to work with WordPress as a platform because we like building elegant solutions. However, we do engage in WordPress as a product projects as well and have built some sites and services we are quite proud of.</p>
<p>WordPress is both a platform and a product &#8211; it&#8217;s a wonderful and confusing world.</p>
<p>If you&#8217;re a WordPress developer or are interested in building something interesting with WordPress, taking a moment to figure out if you need/want to use WordPress as a platform or as a product may save you quite a few headaches.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4147&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/05/17/wordpress-platform-or-product/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Exclude File Type Requests</title>
		<link>http://alexking.org/blog/2010/05/13/exclude-file-type-requests</link>
		<comments>http://alexking.org/blog/2010/05/13/exclude-file-type-requests#comments</comments>
		<pubDate>Thu, 13 May 2010 23:37:13 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4316</guid>
		<description><![CDATA[We&#8217;ve released a new WordPress plugin to help reduce the server load that can occasionally result from a large number of 404 requests on a WordPress-powered site. I wrote about this issue in some detail previously.
This plugin gives you the ability to set a collection of file extensions that you do not want WordPress to [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve released a new <a href="http://wordpress.org/" rel="external">WordPress</a> plugin to help reduce the server load that can occasionally result from a large number of 404 requests on a WordPress-powered site. I <a href="http://alexking.org/blog/2008/07/31/404s-and-wordpress-server-load">wrote about this issue in some detail</a> previously.</p>
<p>This plugin gives you the ability to set a collection of file extensions that you do not want WordPress to handle. For example, a request to a .gif file probably isn&#8217;t a valid request to one of your posts or pages, so having WordPress look at the URL and try to find something to show is a waste of server resources.</p>
<p>Note that this is a very basic implementation that has been only lightly tested on a few sites. If you have any trouble with it or think an alternate implementation would be an improvement, patches and/or suggestions are quite welcome.</p>
<p>All of my plugins now have new homes on the <a href="http://crowdfavorite.com">Crowd Favorite</a> website, along with their own dedicated <a href="http://crowdfavorite.com/forums/forum/exclude-file-type-requests">community support forum</a>. You can find the details, screenshots, support info, etc. for this plugin on the <a href="http://crowdfavorite.com/wordpress/plugins/exclude-file-type-requests/">Exclude File Type Requests plugin page</a>.</p>
<p>Enjoy!</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4316&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/05/13/exclude-file-type-requests/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WordCamp SF 2010</title>
		<link>http://alexking.org/blog/2010/04/28/wordcamp-sf-2010</link>
		<comments>http://alexking.org/blog/2010/04/28/wordcamp-sf-2010#comments</comments>
		<pubDate>Wed, 28 Apr 2010 18:35:23 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4292</guid>
		<description><![CDATA[I&#8217;m heading to WordCamp SF again this year and quite looking forward to it. Several folks from Crowd Favorite are making the trip this year.

I&#8217;m looking forward to seeing a number of friends in the community this weekend. Of particular note, I&#8217;m hoping to talk to more plugin developers and find our new ways that [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m heading to <a href="http://2010.sf.wordcamp.org/" rel="external">WordCamp SF</a> <a href="http://alexking.org/blog/2009/05/28/wordcamp-sf-this-weekend">again</a> this year and quite looking forward to it. Several folks from <a href="http://crowdfavorite.com">Crowd Favorite</a> are making the trip this year.</p>
<p class="center"><a href="http://2010.sf.wordcamp.org/"><img src="http://2010.sf.wordcamp.org/files/2010/04/wcsf-l.png" alt="WordCamp SF 2010" /></a></p>
<p>I&#8217;m looking forward to seeing a number of friends in the community this weekend. Of particular note, I&#8217;m hoping to talk to more plugin developers and find our new ways that <a href="http://wphelpcenter.com">WordPress HelpCenter</a> can work for them.</p>
<p>If you&#8217;re going to be around and would like to catch up or perhaps meet up and get acquainted and talk WordPress &#8211; get in touch or come say hi at the event.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4292&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/04/28/wordcamp-sf-2010/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.660 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2010-07-29 11:15:57 -->
