<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Shannon Whitley</title>
	
	<link>http://www.voiceoftech.com/swhitley</link>
	<description>Inspired by Actual Events</description>
	<lastBuildDate>Mon, 28 Sep 2009 17:39:19 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<geo:lat>37.769528</geo:lat><geo:long>-122.259378</geo:long><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/swhitley" type="application/rss+xml" /><feedburner:browserFriendly>This is an XML content feed. It is intended to be viewed in a newsreader or syndicated to another site, subject to copyright and fair use.</feedburner:browserFriendly><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Introducing PopCann</title>
		<link>http://www.voiceoftech.com/swhitley/?p=810</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=810#comments</comments>
		<pubDate>Sun, 27 Sep 2009 02:42:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=810</guid>
		<description><![CDATA[PopCann is a process that allows anyone to send 140-character messages via e-mail without being tethered to a single service.&#160; It’s one more take on the idea of a decentralized Twitter network.&#160; Although I’ve created the first application using WordPress, the process is not application-specific.&#160; The approach is similar to many others in this space, [...]]]></description>
			<content:encoded><![CDATA[<p>PopCann is a process that allows anyone to send 140-character messages via e-mail without being tethered to a single service.&#160; It’s one more take on the idea of a decentralized Twitter network.&#160; Although I’ve created the first application using WordPress, the process is not application-specific.&#160; The approach is similar to many others in this space, XML is used to transfer each message, but less emphasis is placed on “instant communication” (even though this process appears to be rather quick).</p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/email.png"><img title="email" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin: 10px; border-right-width: 0px" height="154" alt="email" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/email_thumb.png" width="154" align="left" border="0" /></a> Every PopCann user has a PopCann id.&#160; The id is an e-mail address.&#160; For each PopCann user, it’s best to create a new e-mail address that will be dedicated to processing PopCann messages.&#160; Any e-mail address will work with the PopCann WordPress Plugin, as long as the e-mail provider supports the POP3 protocol.&#160; PopCann has been tested using both GMail and Hotmail accounts.</p>
<p>I’ve created a set of instructions for installing and configuring the PopCann WordPress Plugin, “<a href="http://www.voiceoftech.com/swhitley/?page_id=790" target="_blank">Building a Decentralized-Twitter using WordPress, E-mail, and Chewing Gum</a>.”&#160; This plugin is meant to be used for demonstration purposes.&#160; I recommend installing the code into a test environment since it has not been rigorously tested.</p>
<h3>Using PopCann</h3>
<p>PopCann is based on the publish/subscribe model.&#160; If you’ve setup the PopCann WordPress Plugin, a visitor to your PopCann Homepage can subscribe to your messages (or “pops”).&#160; Each user has a homepage and you can subscribe to their pops too.&#160; The creation of the homepage is described in the <a href="http://www.voiceoftech.com/swhitley/?page_id=790" target="_blank">installation instructions</a>.</p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/subscribe.png"><img title="subscribe" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="192" alt="subscribe" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/subscribe_thumb.png" width="402" border="0" /></a> </p>
<p>To subscribe, the visitor simply enters their PopCann e-mail address in the box and clicks the subscribe button.&#160; This action will add a subscription record to your WordPress system.&#160; It will also generate an e-mail to the visitor’s PopCann system so that they will have a record of the subscription.</p>
<p>Everytime you post an update, that update will be e-mailed to all of your subscribers.</p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/update.png"><img title="update" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="293" alt="update" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/update_thumb.png" width="404" border="0" /></a> </p>
<p>The message will also appear on your homepage.&#160; Each of these messages is stored as a comment in the WordPress system.&#160; Basically, every message you create or receive is a comment for one WordPress page.</p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/pop.png"><img title="pop" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="99" alt="pop" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/pop_thumb.png" width="404" border="0" /></a> </p>
<p>&#160;</p>
<p>Each of your subscribers has his or her own PopCann Homepage.&#160; New messages are added via automatic polling of the e-mail inbox.</p>
<p>&#160; </p>
</p>
</p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/polling.png"><img title="polling" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="201" alt="polling" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/polling_thumb.png" width="229" border="0" /></a> </p>
<p>Once the subscriber refreshes the page, new messages will be displayed.</p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/newpost.png"><img title="newpost" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="421" alt="newpost" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/newpost_thumb.png" width="404" border="0" /></a></p>
<p>&#160;</p>
<p>I will be adding details about PopCann to the wiki at PopCann.org (not available yet).</p>
<p>There are still a great many items to work through and I’m going to need help identifying and solving a few challenges.&#160; I hope you’ll get involved and lend a hand.&#160; I’ve identified a few concerns already and I’ll create a list on the wiki.&#160; I’m confident that we can work together and find simple solutions for these challenges.</p>
<h3>Why Bother?</h3>
<p>Do we really need another microblogging system?&#160; I don’t think we need hard standards at this stage.&#160; We’re still experimenting and I think it’s worth exploring various options.&#160; This process works.&#160; I’ve already used it.&#160; The only question now is how well will it work if it’s applied to a larger audience.&#160; I think that question is worth exploring.</p>
<p><strong>Update:</strong></p>
<p>I&#8217;ve created my own page on this blog.  I need to adjust my css and I wish I&#8217;d changed the default permalinks when I first created this blog (live &#038; learn).  You can subscribe to my page &#038; we can chat. <img src='http://www.voiceoftech.com/swhitley/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.voiceoftech.com/swhitley/?page_id=814">Shannon&#8217;s PopCann Homepage</a></p>
<p>&#160;</p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:b495f2a9-e866-478c-9fab-a4b6bbd7b618" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a href="http://technorati.com/tags/Microblogging" rel="tag">Microblogging</a>,<a href="http://technorati.com/tags/decentralized+Twitter" rel="tag">decentralized Twitter</a>,<a href="http://technorati.com/tags/e-mail" rel="tag">e-mail</a>,<a href="http://technorati.com/tags/WordPress" rel="tag">WordPress</a>,<a href="http://technorati.com/tags/comments" rel="tag">comments</a></div>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D810&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D810&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D810&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D810&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=810</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Political Ideals or an Ugly Mask?</title>
		<link>http://www.voiceoftech.com/swhitley/?p=775</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=775#comments</comments>
		<pubDate>Mon, 14 Sep 2009 04:29:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=775</guid>
		<description><![CDATA[Since Obama took office, the rate of threats against the president has increased 400%.&#160; The Secret Service is struggling to protect our president, and after only being in office for eight months, I’m struggling to see what he’s done to elicit such a strong reaction.&#160; What evil has this man wrought to bring down such [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Since Obama took office, the rate of threats against the president has </strong><a href="http://www.telegraph.co.uk/news/worldnews/northamerica/usa/barackobama/5967942/Barack-Obama-faces-30-death-threats-a-day-stretching-US-Secret-Service.html"><strong>increased 400%</strong></a><strong>.&#160; The Secret Service is struggling to protect our president, and after only being in office for eight months, I’m struggling to see what he’s done to elicit such a strong reaction.&#160; What evil has this man wrought to bring down such hatred? </strong></p>
<p>When it comes to ideologies, I don’t really count myself in one camp or the other, but I understand many of the concerns expressed by conservative leaders.&#160; Having said that, why is Obama, above all of the other democratic presidents, targeted with such hostility?&#160; Why now are so many people screaming so loudly about Socialism and Communism as if we were in the throes of McCarthyism?</p>
<p><a href="http://www.jakedonahue.com/2008/10/election-issue-obama-mask.html"><img title="election4" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin: 10px; border-right-width: 0px" height="244" alt="election4" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/09/election4.jpg" width="212" align="left" border="0" /></a> “Racism” is a term that I take very seriously.&#160; I know the weight that this one word can carry, and I understand the results of using it irresponsibly.&#160; “Crying Wolf” would be detrimental to my own beliefs.&#160; I do not, however, hesitate to point out racist acts when the situation calls for it.&#160; Racism is still very much alive in America, and I think it’s very dangerous to think otherwise.</p>
<p>In the case of the furor that erupted over Obama’s speech to school children, I was shocked and dismayed by the reaction of many of the parents.&#160; I believe that many of those parents who would pull their kids out of school rather than hear Obama speak were motivated by racism.&#160; They may argue about concerns over “political indoctrination.”&#160; They can say that they are exercising their rights to disagree with the president, but I simply don’t buy it.&#160; Many of those parents were angry, seething mad, almost as if the school had invited a criminal to address the student body.&#160; No matter how much you disagree with a politician, I just don’t see how the reaction was justified.&#160; Why does Obama scare these people so much?</p>
<p>In retrospect, we now know that the speech was completely apolitical and positive.&#160; So what was the problem?&#160; Why were so many people angry about the speech.&#160; Why is so much “hate” aimed at Barack Obama.&#160; He’s the president of our country; what has he done to deserve this disrespect?&#160; </p>
<p>There have been a number of negative assumptions about Obama’s plans for America.&#160; I’m trying to determine how disagreement over ideas has turned into hatred toward a man:</p>
<p><strong>Barack Obama wants to forcibly take away our money and give it to the poor.</strong>&#160; He does talk a lot about “sharing.”&#160; I get uncomfortable with this too.&#160; I’ve worked hard for my money and I want to keep it.&#160; Usually, Obama talks about this in terms of the redistribution only affecting the “very wealthy.”&#160; While that can mean many things, it may not directly impact most of us.&#160; Still, I can see disagreeing with him on this, but he hasn’t stolen anyone’s earnings or redistributed your wealth.&#160; Where is the reason for hate?</p>
<p><strong>Barack Obama wants to take away our health care and force us into a national system.</strong>&#160; I watched his speech the other night.&#160; He specifically said that we can keep our current health care if we’re happy with our plan.&#160; Now, the argument could be that there will be a snowball effect and employers will dump us into the national system anyway.&#160; That’s a legitimate concern, and one that we should raise to our representatives.&#160; I’m still not seeing how that is hate-worthy though.</p>
<p>So why do some people <em>really</em> hate Obama?&#160; Why do they fear his speaking at their child’s school?&#160; Why are they so afraid of his presence that they will take extreme action and remove their child completely?&#160; The answer is very clear to me:&#160; “Obama is different.&#160; His skin is dark.&#160; I don’t trust him.”&#160; If you doubt this, think about a hypothetical speech on that same day given by Joe Biden.&#160; Do you think anyone would have balked for one second at that speech?&#160; Do you think any type of brouhaha would have developed if Smilin’ Joe came to town?&#160; It’s racism, plain and simple.&#160; Obama scares people because he is perceived as being different.&#160; He’s not a white guy (well, he’s only half-a white guy).&#160; So the fear festers until people find a socially acceptable way to express it.&#160; “Okay, I don’t hate him because he’s black.&#160; I hate him because he’s a socialist.”&#160;&#160;&#160; </p>
<p>The question is now, will we deal with our collective racism, or hide behind calls for better discourse.&#160; I believe we need to confront racism.&#160; We can’t use words like “socialism,” “communism,” or “political differences” and act like those are the real problems that many people have with Obama.&#160; And we can’t call people “superior liberals” (no less an attempt at an end-game) to change the discussion points.&#160; We have a big problem.&#160; Our president is at risk and we need to work together to squelch the hate.&#160; We can all disagree, but there comes a time when you need to call people on the motivations behind their disagreements.&#160; Many people are legitimately angry and fearful based on political grounds and I don’t discount their beliefs, but too many other people are using political ideology to mask a more deep-seated illness that is making our country a dangerous place for our president. </p>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D775&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D775&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D775&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D775&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=775</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A Walk in the rssCloud.org</title>
		<link>http://www.voiceoftech.com/swhitley/?p=773</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=773#comments</comments>
		<pubDate>Wed, 09 Sep 2009 06:27:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[RSS]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=773</guid>
		<description><![CDATA[A couple of months ago, Dave Winer started a site called rssCloud.org.&#160; The website documents his progress in building real-time messaging components using RSS as the backbone.&#160; This week I became aware of his work through a Read Write Web article.&#160; Well, needless to say, this is of keen interest to me and I decided [...]]]></description>
			<content:encoded><![CDATA[<p>A couple of months ago, Dave Winer started a site called <a href="http://rssCloud.org">rssCloud.org</a>.&#160; The website documents his progress in building real-time messaging components using RSS as the backbone.&#160; This week I became aware of his work through a <a href="http://www.readwriteweb.com/archives/wordpress_just_made_millions_of_blogs_real-time_wi.php">Read Write Web article</a>.&#160; Well, needless to say, this is of keen interest to me and I decided to give Dave’s process a try tonight.</p>
<p>The documentation on rssCloud.org includes all of the details, but I’ll summarize the process below: </p>
<ul>
<li>We want to be notified in real-time whenever an RSS feed changes.&#160; </li>
<li>To enable notifications, the feed should contain a &lt;cloud&gt; element.&#160; The &lt;cloud&gt; element tells us where and how to request real-time change notifications.</li>
<li>Using the information from the &lt;cloud&gt; element, we submit a request to an rssCloud service.&#160; We tell the service:&#160; “Whenever the RSS feed changes, send a notification to &lt;this&gt; address.”</li>
<li>The owner of the RSS feed publishes an update and pings the rssCloud service.&#160; (This part of the process is the same as pinging a service like Technorati after you publish a post.)</li>
<li>The rssCloud service looks up our earlier request and then notifies us that the RSS feed has changed.&#160; </li>
<li>We know immediately that the feed has changed.&#160; It’s then up to us to read the RSS feed and actually find the changes.</li>
</ul>
<p>To test the service, I setup a script using PHP and communicated with the rssCloud.org service over REST.&#160; I first pinged the service with information about my RSS feed.&#160; Everything worked well.&#160; I could see in the log file at rssCloud.org that my ping had been accepted and changes in my feed were noted (since this was the first ping).&#160; I then pinged the rssCloud service a second time.&#160; Since my RSS feed hadn’t been updated, the service log reported that the ping was received and the RSS feed was unchanged.&#160; Perfect!</p>
<p>I then setup the notification request.&#160; I posted the address of the RSS feed and the address to which I’d like to receive notifications.&#160; The request worked exactly as advertised and if I’d been using a different server, I could have moved onto the next steps:&#160; generating a change and actually receiving the notification.&#160; Unfortunately, I had to stop my test run at this point due to the way rssCloud.org verifies the notification address.&#160; I’ll explain a little more about the issue in a minute, but it wasn’t a loss at all.&#160; I was able to watch the rssCloud log for other people’s notifications and I saw how it would work.&#160; It’s a good, simple and clean process.&#160; </p>
<p>So back to my issue.&#160; Obviously, a desktop application will have trouble with this process because the rssCloud service must be able to contact your machine over the Internet.&#160; It’s possible to configure a desktop for this type of contact, but it’s definitely not an easy thing to do using today’s tools.&#160; But I pushed my script out to the Internet, so why didn’t it work?&#160; My problem stems from the use of a shared webhost to run my PHP script.&#160; rssCloud.org will only send a notification back to the IP address from which the request originated.&#160; Especially in a shared webhost environment, multiple domains can share the same IP address, or outbound requests may be made on a different IP address than inbound requests.&#160; </p>
<p>On a server where I have complete control, I could get around this issue, and if I have more time, I’ll move my script to one of my other servers.&#160; Still, the way I was thinking about using rssCloud, it would be nice if it worked with this configuration too.&#160; I think the issue can be easily solved by allowing the pleaseNotify request to include a domain.&#160; Perhaps a shared secret can be used to verify the origination of the request.</p>
<p>My ultimate goal was to build a simple aggregator.&#160; I didn’t make it to that step, but it was an interesting first run.&#160; </p>
<p>I need to invest more time into studying how these services scale.&#160; There are some bits of knowledge that I’m missing when it comes to the current breed of real-time messaging systems.&#160; This is a good thing.&#160; There’s always more to learn and there are always more experiments to run.</p>
<p>And to Dave Winer, thanks for rssCloud.org…Keep on Truckin’.</p>
<p>&#160;</p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:ecd4e200-2f55-48df-b262-158a70ae9b26" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a href="http://technorati.com/tags/rssCloud" rel="tag">rssCloud</a>,<a href="http://technorati.com/tags/microblogging" rel="tag">microblogging</a>,<a href="http://technorati.com/tags/RSS" rel="tag">RSS</a></div>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D773&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D773&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D773&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D773&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=773</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>When Short Url Services Die – Protect Yourself</title>
		<link>http://www.voiceoftech.com/swhitley/?p=769</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=769#comments</comments>
		<pubDate>Mon, 10 Aug 2009 18:29:42 +0000</pubDate>
		<dc:creator>Shannon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=769</guid>
		<description><![CDATA[The tr.im url shortening service announced that it may be going out of business.&#160; This was a big shock to people who use the service.&#160; It means that all tr.im urls could be dead after December 2009.&#160; Broken links represent more than lost information, they can result in lost business, and so it’s important to [...]]]></description>
			<content:encoded><![CDATA[<p>The <strong>tr.im</strong> url shortening service <a href="http://mashable.com/2009/08/09/trim-shuts-down/" target="_blank">announced that it may be going out of business</a>.&#160; This was a big shock to people who use the service.&#160; It means that all tr.im urls could be dead after December 2009.&#160; Broken links represent more than lost information, they can result in lost business, and so it’s important to think of contingency plans when it comes to your use of short urls.</p>
<p>While I recommend that each business setup its own url shortening service, there is a quick way to place a buffer between the links that you share and the shortening service that you use; create a short url translator.&#160; </p>
<p>A short url translator is a small file on your site that looks like a shortening service.&#160; Instead of keeping track of shortened urls, however, it simply redirects requests for links to the url shortening service of your choice.&#160; You don’t share links directly from your url shortening service, you share links that pass through your translator.&#160; These links won’t be as short as the links from your short url service, but sometimes short<em>er</em> is good enough.</p>
<p>For example, let’s say you have a long url:</p>
<p>http://mydomain.com/marketing/brochure/thisisthebestbrochure.htm</p>
<p>Typically, you would shorten the link above on tinyurl.com to something like this:</p>
<p>http://tinyurl.com/8dn35</p>
<p>&#160;</p>
<p>With the translator, rather than sending your customers the tiny url, you send them this link:</p>
<p>http://short.mydomain.com/8dn35</p>
<p>&#160;</p>
<p>When your customer clicks on the link (http://short.mydomain.com/8dn35) your site will translate that link to http://tinyurl.com/8dn35 and they’ll be redirected to your brochure as if they had used the tiny url directly.</p>
<p>Now, the protection lies in your ability to control the destination for the original link.&#160; If tiny url is no longer available (God forbid), your clients would be stuck with a dead link.&#160; However, because you sent out this link http://short.mydomain.com/8dn35, you can do some additional programming on your site to redirect the link to the correct page.</p>
<p>This solution assumes that tiny url will continue to be fine and that you’ll only have to make any changes in an emergency.&#160; If you still have big concerns, then I really suggest you write your own service so that you control the entire process.</p>
<p>I’ve included the code below for a short url translator.&#160; Give it a try.&#160; I’d love to hear your suggestions and concerns.</p>
<pre>
<pre class="brush: php">
&lt;?php
/*
* @package ShortUrl Translator
* @author Shannon Whitley
* @copyright Whitley Media
* @license GNU/GPL Version 2
* This is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; version 2 of the License.
*/
/********************************************************************************

Usage:  Use the code from a short url service as the
        last parameter when calling this page.

	Example:  

        http://{your website}/shorturl.php/unicycles will redirect
        to http://tinyurl.com/unicycles

        You can add a subdomain and implement url rewriting to create this:

            http://short.{your website}/unicycles

********************************************************************************/

$shorturl = &#039;&#039;;
$shortcode = &#039;&#039;;

/********************************************************************************
** Insert your favorite short url service.
** The format is assumed to be:  http://{short url svc}/{code}
********************************************************************************/
$shorturlsvc = &#039;http://tinyurl.com/&#039;;
/********************************************************************************/

$urlParts = explode(&#039;/&#039;, $_SERVER[&quot;PHP_SELF&quot;] );

//Example:  http://{your website}/shorturl.php/unicycles
if(count($urlParts) == 3)
{
	$shortcode = $urlParts[2];
}

//Redirect to the short url service.
if(strlen($shortcode) &gt; 0)
{
	$shorturl = $shorturlsvc . $shortcode;
        header( &#039;Location: &#039; . $shorturl );
}
else
{
        header( &#039;Location: /&#039;);
}

?&gt;
</pre>
</pre>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D769&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D769&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D769&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D769&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=769</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Your Business on Twitter and a Multiple Account Strategy</title>
		<link>http://www.voiceoftech.com/swhitley/?p=768</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=768#comments</comments>
		<pubDate>Thu, 06 Aug 2009 06:08:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Business]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=768</guid>
		<description><![CDATA[I recently went live with a new web service called ClickableNow.&#160; The service is exciting to me; it finally allows people to create clickable backgrounds on Twitter.&#160; Aside from writing the code, integrating the design, and creating content, I’ve also done quite a bit of support and outreach for this service.&#160; In the past, I’ve [...]]]></description>
			<content:encoded><![CDATA[<p>I recently went live with a new web service called <a href="http://clickablenow.com" target="_blank">ClickableNow</a>.&#160; The service is exciting to me; it finally allows people to create clickable backgrounds on Twitter.&#160; Aside from writing the code, integrating the design, and creating content, I’ve also done quite a bit of support and outreach for this service.&#160; In the past, I’ve answered questions on Twitter for my other projects, but this is the first service where I’ve officially manned a special Twitter account that was setup for this service alone.&#160; </p>
<p><a href="http://twitter.threadless.com/product/1852/I_m_huge_on_Twitter"><img title="Courtesy of Threadless" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin: 10px; border-right-width: 0px" height="260" alt="Courtesy of Threadless" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/08/hugeontwitter.png" width="260" align="left" border="0" /></a> Just keeping up with one Twitter account for a business is no easy task.&#160; It’s important to follow people back, reply to direct messages, and respond to public tweets.&#160; Additionally, there are marketing tasks that should be handled through the account, and it’s a challenge to promote the service without becoming too spammy.&#160; I have to remind myself to slowdown sometimes.&#160; It would be very easy to drive away followers with an overactive stream of sales pitches.&#160; After several days working through this account, I started to realize that many of these activities don’t easily coexist and probably should be spread out over multiple Twitter accounts.</p>
<p>While my service is too small to warrant multiple accounts, a larger business might consider the different roles that it must play on Twitter.&#160; I’ll assume that most businesses already have Twitter users who are affiliated with the company but tweet as individuals.&#160; People on Twitter want to interact with other people (duh), so key employees should establish individual accounts and interact with customers on a human level.&#160; Today, there is also an expectation that you’ll have a business account that represents the entire company.&#160; I’ll now go into further detail about a possible strategy for establishing those types of accounts.</p>
<p>I’d recommend setting up a primary Twitter account for your business that is very clearly the main contact point.&#160; If possible, use your company name in the account name.&#160; Keep Twitter’s 140-character limit in mind while creating any account and try to keep your name short.&#160; </p>
<p>Throughout the rest of this post, I’ll use a fictional company for my examples.&#160; The fictional company’s name is Dell, and we’ll pretend this company is a maker of computer hardware and accessories.&#160; So, Dell would setup a primary Twitter account, and might name the account @Dell.&#160; The logical name for your company may already be taken and creativity could be required.&#160; Taking a line from Comcast, perhaps DellCares would be an alternative if @Dell happens to be taken.</p>
<blockquote><p>DellCares – Primary Account</p>
<p>DellHelp – Customer Care</p>
<p>DellDeals – Sales and Marketing</p>
</blockquote>
<p>The primary Dell account will be the official source for regular news from the company.&#160; It will also serve as a contact for customer service requests and occasionally could be used to announce sales offers.&#160; Whomever is in charge of this account should be adept at responding to all types of contact.&#160; Although there is never room for “it’s not my job” in a company, that’s especially true on Twitter.&#160; A customer might contact any one of your accounts.&#160; It’s important for the people behind those accounts to respond no matter what role you’ve assigned them.&#160; They must be able to tactfully pass customers on to those people who can provide the best support, and that brings me to my second type of account.&#160; In addition to your primary account, you’ll want to establish specific Help accounts.</p>
<p>The Help account(s) should be clearly named to show that they are part of the company and are specifically available for customer care.&#160; DellHelp, for example, could be established as an account for direct customer service.&#160; DellHelp would monitor requests to the primary Dell account and jump in for one-on-one assistance.&#160; This frees the primary account from the need to have too many public exchanges regarding individual service needs.&#160; This is important because we don’t want to inundate followers of the primary account with individual problems.&#160; The primary account should try to transfer individual help scenarios to the Help account whenever possible.&#160; This is a balancing act.&#160; The primary account is still responsible for all pleas for help and (as with any customer service position) must never appear to be passing the buck.</p>
<p>Twitter is a great place to market your products and announce your latest deals <em>to those who are interested</em>.&#160; The key thing to understand is that many people who connect with your primary Twitter account will not appreciate an overabundance of sales pitches.&#160; It will soon look like “spam” in your follower’s timelines and they’ll unfollow your primary account unless you manage your output carefully.&#160; To provide a constant flow of marketing and sales information, a business should create another type of account.&#160; Again, using our example company, we might create an account called DellDeals.&#160; DellDeals can be used to add sales tweets to the public stream and to announce any number of special offers.&#160; The primary Dell account is not affected if DellDeals is used to announce multiple smaller offers and giveaways.&#160; The primary account can still be used to announce large, special promotions, but the volume of these announcements should be much lower.&#160; The primary account should retweet announcements from DellDeals rather than making the announcements directly.&#160; This is a strategy that can help with additional retweets.&#160; If the announcement begins as a retweet, it will start off in the minds of your followers as something that is worth retweeting.</p>
<p>Once you establish your multiple Twitter accounts, you’ll need to staff them appropriately.&#160; It’s okay to have one person monitor and respond through multiple accounts, but provide the correct tools so they may shift easily between accounts.</p>
<p>This isn’t a science yet and the strategy that I’ve outlined in this post is not for every business.&#160; It should give you something to think about when you plan your approach to Twitter.&#160; While it’s easier to experiment through your individual accounts, you’ll want to be very careful with your business accounts.&#160; These accounts represent your entire business on Twitter.&#160; Consider your available resources, staff appropriately, and encourage your employees to interact with your customers as real people (not faceless agents).&#160; Keep that last point in mind and you’ll do fine on Twitter no matter which approach you take.</p>
<p>&#160;</p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:673da21f-ec53-4cc7-b334-fb843746d6db" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a href="http://technorati.com/tags/Twitter" rel="tag">Twitter</a>,<a href="http://technorati.com/tags/business" rel="tag">business</a>,<a href="http://technorati.com/tags/ClickableNow" rel="tag">ClickableNow</a>,<a href="http://technorati.com/tags/customer+service" rel="tag">customer service</a></div>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D768&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D768&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D768&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D768&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=768</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Chat Catcher: Customize Your WordPress Comments and Trackbacks</title>
		<link>http://www.voiceoftech.com/swhitley/?p=728</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=728#comments</comments>
		<pubDate>Fri, 26 Jun 2009 10:27:06 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=728</guid>
		<description><![CDATA[WordPress themes are almost as varied and numerous as WordPress users. Changing the look of a blog on-the-fly is simple, and if a WordPress theme becomes a little stale, there are plenty of theme galleries to browse. But not all themes are created equal, and even if a theme is done well, WordPress upgrades can [...]]]></description>
			<content:encoded><![CDATA[<p>WordPress themes are almost as varied and numerous as WordPress users. Changing the look of a blog on-the-fly is simple, and if a WordPress theme becomes a little stale, there are plenty of theme galleries to browse. But not all themes are created equal, and even if a theme is done well, WordPress upgrades can leave a theme with outdated code. If you use <a href="http://chatcatcher.com/" target="_blank">Chat Catcher</a> on your blog, it&#8217;s important to understand how your theme controls the display of comments and trackbacks.&nbsp; More importantly, if you&#8217;re not happy with that display, it&#8217;s important to learn how to change it.</p>
<p>When I wrote the Chat Catcher plugin, I felt it was important to leave as much of the existing comment system intact. WordPress manages comments effectively and I want to build on the existing code without replacing it. While this is the best approach for Chat Catcher, it does make the solution dependent on whichever theme is in place on a particular blog. For example, if a theme doesn&#8217;t display trackbacks and Chat Catcher is still set to post trackbacks, the captured tweets will never appear on the blog. Comments and trackbacks are often formatted differently, so even if a theme displays trackbacks, that doesn&#8217;t mean the Chat Catcher comments will be displayed properly.</p>
<p>Although there are many blog posts that address this topic, I thought it best to create one specifically for Chat Catcher. In the following sections, I&#8217;ll describe how easy it is to separate comments from trackbacks, and I&#8217;ll provide some additional tips for customizing the format of your blog&#8217;s comments.</p>
<h3>Before You Do Anything</h3>
<p>I highly recommend you setup a <a href="http://codex.wordpress.org/Test_Driving_WordPress#Install_another_Blog">test blog</a> before reading any further. Test blogs are wonderful things. They protect you from the embarrassment of bringing down your main blog when you make a big mistake performing a simple code change.</p>
<p>Now that I&#8217;ve warned you, I recognize that many of you will still apply this to your main blog without testing it first. At least make a copy of your theme files before performing any modifications. We&#8217;ll be modifying the comments.php file, so make a copy of that file in your theme folder. For example, let&#8217;s say you&#8217;re running the default theme on your blog. Go to &#8220;\{your web files}\wp-content\themes\default&#8221; and make a copy of the comments.php file.</p>
<h3>Chat Catcher Settings</h3>
<p>There are three main ways to leave feedback on a blog:&nbsp; comments, trackbacks, and pingbacks.&nbsp; All three of these are considered types of comments.&nbsp; They look similar when saved in the WordPress database, but a field called <strong>comment_type</strong> is used to keep them separate.&nbsp; Each regular comment has a blank comment type; trackbacks and pingbacks have a comment type of &#8220;trackback&#8221; or &#8220;pingback&#8221; respectively.</p>
<p>There isn&#8217;t an easy way to change a comment&#8217;s type after it has been saved. That&#8217;s why it&#8217;s important to select the comment type for Chat Catcher comments before they&#8217;re posted. To select the Chat Catcher comment type, navigate to the Chat Catcher Settings page and select from the list. If your blog receives a moderate amount of regular comments, I recommend separating your Chat Catcher comments so that they do not appear inline with regular comments. Use the Trackback or Custom Trackback (available in <a href="http://wordpress.org/extend/plugins/chatcatcher">Chat Catcher ver. 2.75</a>) type to separate the Chat Catcher comments. It&#8217;s important to note that you may need to modify your theme depending on the choice you make. Your readers, however, will appreciate the effort.</p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/06/windowslivewriter6d8516facdbf-13b53cccommenttype-2.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="168" alt="cccommenttype" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/06/windowslivewriter6d8516facdbf-13b53cccommenttype-thumb.png" width="579" border="0"></a> </p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h3>Modifying the Comment Display</h3>
<p>Open the file called comments.php in your current theme. Comments are often displayed using a &#8220;loop&#8221; with a &#8220;foreach&#8221; statement. An example is shown below:</p>
<pre>
<pre class="brush: php">&lt;ol id=&quot;commentlist&quot;&gt;
&lt;?php foreach ($comments as $comment) : ?&gt;
	&lt;li &lt;?php comment_class(); ?&gt; id=&quot;comment-&lt;?php comment_ID() ?&gt;&quot;&gt;
	&lt;?php echo get_avatar( $comment, 32 ); ?&gt;
	&lt;?php comment_text() ?&gt;
	&lt;p&gt;&lt;cite&gt;&lt;?php comment_type(_c(&#039;Comment|noun&#039;), __(&#039;Trackback&#039;), __(&#039;Pingback&#039;)); ?&gt; &lt;?php _e(&#039;by&#039;); ?&gt; &lt;?php comment_author_link() ?&gt; — &lt;?php comment_date() ?&gt; @ &lt;a href=&quot;#comment-&lt;?php comment_ID() ?&gt;&quot;&gt;&lt;?php comment_time() ?&gt;&lt;/a&gt;&lt;/cite&gt; &lt;?php edit_comment_link(__(&quot;Edit This&quot;), &#039; |&#039;); ?&gt;&lt;/p&gt;
	&lt;/li&gt;
&lt;?php endforeach; ?&gt;
&lt;/ol&gt;</pre>
</pre>
<p>In Version 2.7 of WordPress, a function was added to display the comments without a loop. Although the function is simpler to code, it does make it more difficult to customize the comment layout.</p>
<p>Using wp_list_comments():</p>
<pre>
<pre class="brush: php">	&lt;ol class=&quot;commentlist&quot;&gt;
	&lt;?php wp_list_comments(); ?&gt;
	&lt;/ol&gt;</pre>
</pre>
<p>Now that you&#8217;ve seen the standard code, it&#8217;s time to replace it. Let&#8217;s copy the delivered code and change it to separate different comment types. Keep in mind that your existing comments.php may have special formatting or the code may already be set to separate the comments and trackbacks.&nbsp; Make sure you have a backup of comments.php so that you can recreate the original and incorporate theme-specific coding if necessary.</p>
<p>The code displayed below is from a comment loop, modified to separate comments and trackbacks:</p>
<pre>
<pre class="brush: php">&lt;ol id=&quot;commentlist&quot;&gt;
&lt;?php
      $wp_query-&gt;comments_by_type = &amp;separate_comments($comments);
      $comments_by_type = &amp;$wp_query-&gt;comments_by_type;
?&gt;
&lt;?php foreach ($comments as $comment) : ?&gt;
&lt;?php if($comment-&gt;comment_type == &#039;&#039;) : ?&gt;
&lt;li &lt;?php comment_class(); ?&gt; id=&quot;comment-&lt;?php comment_ID() ?&gt;&quot;&gt;
	&lt;?php echo get_avatar( $comment, 32 ); ?&gt;
	&lt;?php comment_text() ?&gt;
	&lt;p&gt;&lt;cite&gt;&lt;?php comment_type(_c(&#039;Comment|noun&#039;), __(&#039;Trackback&#039;), __(&#039;Pingback&#039;)); ?&gt; &lt;?php _e(&#039;by&#039;); ?&gt; &lt;?php comment_author_link() ?&gt; — &lt;?php comment_date() ?&gt; @ &lt;a href=&quot;#comment-&lt;?php comment_ID() ?&gt;&quot;&gt;&lt;?php comment_time() ?&gt;&lt;/a&gt;&lt;/cite&gt; &lt;?php edit_comment_link(__(&quot;Edit This&quot;), &#039; |&#039;); ?&gt;&lt;/p&gt;
	&lt;/li&gt;
&lt;?php endif; ?&gt;
&lt;?php endforeach; ?&gt;
&lt;/ol&gt;
&lt;ol class=&quot;commentlist&quot;&gt;
&lt;?php if(count($comments_by_type[&#039;trackback&#039;]) &gt; 0 || count($comments_by_type[&#039;pingback&#039;]) &gt; 0) : ?&gt;
&lt;h3&gt;Trackbacks&lt;/h3&gt;
&lt;?php endif; ?&gt;
&lt;?php foreach ($comments_by_type[&#039;trackback&#039;] as $comment) : ?&gt;
	&lt;li &lt;?php comment_class(); ?&gt; id=&quot;comment-&lt;?php comment_ID() ?&gt;&quot;&gt;
	&lt;?php echo get_avatar( $comment, 32 ); ?&gt;
	&lt;?php comment_text() ?&gt;
	&lt;p&gt;&lt;cite&gt;&lt;?php comment_type(_c(&#039;Comment|noun&#039;), __(&#039;Trackback&#039;), __(&#039;Pingback&#039;)); ?&gt; &lt;?php _e(&#039;by&#039;); ?&gt; &lt;?php comment_author_link() ?&gt; — &lt;?php comment_date() ?&gt; @ &lt;a href=&quot;#comment-&lt;?php comment_ID() ?&gt;&quot;&gt;&lt;?php comment_time() ?&gt;&lt;/a&gt;&lt;/cite&gt; &lt;?php edit_comment_link(__(&quot;Edit This&quot;), &#039; |&#039;); ?&gt;&lt;/p&gt;
	&lt;/li&gt;
&lt;?php endforeach; ?&gt;
&lt;/ol&gt;</pre>
</pre>
<p>This example shows how to separate comments and trackbacks using the wp_list_comments() function:</p>
<pre>
<pre class="brush: php"> 	&lt;ol class=&quot;commentlist&quot;&gt;
	&lt;?php wp_list_comments(&#039;type=comment&#039;); ?&gt;
	&lt;/ol&gt; 

      &lt;?php
      $wp_query-&gt;comments_by_type = &amp;separate_comments($comments);
      $comments_by_type = &amp;$wp_query-&gt;comments_by_type;
      if(count($comments_by_type[&#039;trackback&#039;]) &gt; 0 || count($comments_by_type[&#039;pingback&#039;]) &gt; 0)
      {
          echo &#039;&lt;h3&gt;Trackbacks&lt;/h3&gt;&#039;;
      }
      ?&gt;
      &lt;ol class=&quot;commentlist&quot;&gt;
	&lt;?php wp_list_comments(&#039;type=trackback&#039;); ?&gt;
      &lt;/ol&gt;</pre>
</pre>
<p>Save the comments.php file and view a blog post. The comments and trackbacks/pingbacks should be neatly separated.</p>
<h3>Separating Chat Catcher Comments</h3>
<p>If you selected &#8220;Trackback&#8221; on the Chat Catcher settings page, the Chat Catcher comments will display under the Trackbacks heading. If you would like to further separate Chat Catcher comments, you can select the &#8220;Custom Trackback&#8221; type and modify your theme.</p>
<p>Modifying your theme for Custom Trackbacks requires the same type of coding as was used to separate regular trackbacks. Instead of specifying &#8216;trackback&#8217; in the code, you&#8217;ll use a custom type called &#8216;ctrackback&#8217;. </p>
<p>For the loop-style comment display, simply copy the trackback section and change the comment types.  Change <strong>$comments_by_type['trackback']</strong> to <strong>$comments_by_type['ctrackback']</strong>:</p>
<pre>
<pre class="brush: php">&lt;ol class=&quot;commentlist&quot;&gt;
&lt;?php if(count($comments_by_type[&#039;ctrackback&#039;]) &gt; 0 ) : ?&gt;
&lt;h3&gt;Social Media Comments&lt;/h3&gt;
&lt;?php endif; ?&gt;
&lt;?php foreach ($comments_by_type[&#039;ctrackback&#039;] as $comment) : ?&gt;
	&lt;li &lt;?php comment_class(); ?&gt; id=&quot;comment-&lt;?php comment_ID() ?&gt;&quot;&gt;
	&lt;?php echo get_avatar( $comment, 32 ); ?&gt;
	&lt;?php comment_text() ?&gt;
	&lt;p&gt;&lt;cite&gt;&lt;?php comment_type(_c(&#039;Comment|noun&#039;), __(&#039;Trackback&#039;), __(&#039;Pingback&#039;)); ?&gt; &lt;?php _e(&#039;by&#039;); ?&gt; &lt;?php comment_author_link() ?&gt; — &lt;?php comment_date() ?&gt; @ &lt;a href=&quot;#comment-&lt;?php comment_ID() ?&gt;&quot;&gt;&lt;?php comment_time() ?&gt;&lt;/a&gt;&lt;/cite&gt; &lt;?php edit_comment_link(__(&quot;Edit This&quot;), &#039; |&#039;); ?&gt;&lt;/p&gt;
	&lt;/li&gt;
&lt;?php endforeach; ?&gt;
&lt;/ol&gt;</pre>
</pre>
<p>&nbsp;</p>
<p>If you are using the wp_list_comments() function, copy the code and change the comment type.   Change <strong>$comments_by_type['trackback']</strong> to <strong>$comments_by_type['ctrackback']</strong> and change <strong>&#8216;type=trackback&#8217;</strong> to <strong>&#8216;type=ctrackback&#8217;</strong>:</p>
<pre>
<pre class="brush: php">
 &lt;?php
      if(count($comments_by_type[&#039;ctrackback&#039;]) &gt; 0)
      {
          echo &#039;&lt;h3&gt;Social Media Comments&lt;/h3&gt;&#039;;
      }
?&gt;
&lt;ol class=&quot;commentlist&quot;&gt;

&lt;?php wp_list_comments(&#039;type=ctrackback&#039;); ?&gt;

&lt;/ol&gt;</pre>
</pre>
<p>&nbsp;</p>
<p>As you&#8217;ve seen, it&#8217;s very easy to modify the comment section of WordPress through your theme.&nbsp; Although you usually won&#8217;t be forced to make these changes, it&#8217;s a good idea to at least consider them.&nbsp; If you don&#8217;t feel comfortable making these changes, perhaps the best way to handle this is to ask a friend for help.&nbsp; As a last resort, you can always search for a new theme with better comment handling.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:3ed2d90e-468f-40bf-be8f-5f2161d4ccd6" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a href="http://technorati.com/tags/Chat%20Catcher" rel="tag">Chat Catcher</a>,<a href="http://technorati.com/tags/Twitter" rel="tag">Twitter</a>,<a href="http://technorati.com/tags/FriendFeed" rel="tag">FriendFeed</a>,<a href="http://technorati.com/tags/identi.ca" rel="tag">identi.ca</a>,<a href="http://technorati.com/tags/comments" rel="tag">comments</a>,<a href="http://technorati.com/tags/blog" rel="tag">blog</a>,<a href="http://technorati.com/tags/trackbacks" rel="tag">trackbacks</a></div></p>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D728&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D728&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D728&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D728&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=728</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Job Posting: We’re Looking for a Know-It-All. No, Really, We Are.</title>
		<link>http://www.voiceoftech.com/swhitley/?p=727</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=727#comments</comments>
		<pubDate>Tue, 23 Jun 2009 17:22:36 +0000</pubDate>
		<dc:creator>Shannon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=727</guid>
		<description><![CDATA[I ran across this job posting and would love to repost it so that someone could take advantage of the opportunity.&#160; Unfortunately, Gattaca is still a few years away and all of Superman’s phone booths have been decommissioned.&#160; I realize that recruiters often start with a best set of qualifications and then settle for less, [...]]]></description>
			<content:encoded><![CDATA[<p>I ran across this job posting and would love to repost it so that someone could take advantage of the opportunity.&#160; Unfortunately, Gattaca is still a few years away and all of Superman’s phone booths have been decommissioned.&#160; I realize that recruiters often start with a best set of qualifications and then settle for less, but shouldn’t the requirements track a little closer to reality?</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p><strong>Software Engineer 1      <br /></strong></p>
<p><strong>Job Description:</strong>&#160; Applicant should have experience in computer and network security. Applicant should have experience in the evaluation of system security such as vulnerability assessments and/or penetration testing Competence in the setup and administration of Linux (.rpm and .deb flavors), FreeBSD, OpenBSD, Windows (XP, Server), Solaris (9 and 10), OS X and ability to learn less mainstream operating systems. Experience configuring and building OS kernels. Experience configuring and building applications from source code. Experience with the setup and configuration of LANs including: Routers, managed switches, IP subnets, Firewalls and other infrastructure devices. Physical setup of networks. Experience setting up *nix network services including: Apache, Samba, NFS, YP, print services (LPD, CUPS), DHCP, DNS (Bind), IPSec and others. Setting up Windows services including: file shares, printer shares, Active Directory, IIS, DNS and others. Setup and development of websites and back end services including: CGI, SQL databases (MySQL, Postgress, MSSQL, Oracle), LAMP, PHP, Perl, HTML, DHTML, ASP, Java Script (AJAX). Configuration and setup of PCs, Mac and SPARC systems including: installation of cards (network, video, etc), memory, configuration of BIOS or firmware settings. Ability to diagnose computer and infrastructure device failures (e.g. power supply, motherboard, memory). Experience repairing computers (e.g. installing new motherboards, power supplies, etc) Programming experience with C/C++, Perl, Ruby, Python, assembly, Java, VB/Visual Studio, shell and BAT scripts. Experience with security tools such as: pf, IP tables/Netfilter, ISA, Nessus, Metasploit, Eeye Retina, ISS, Core Impact, Nmap, P0f, Nikto, miscellaneous fuzzers, Bactrack live CD, Netstumbler, Kismet, AirCrack, Airsnort, L0pthcrack, John the Ripper, rainbow crackers, Tr. Position requires ability to obtain Interim and/or Final Clearances (post start) &#8211; US Citizenship required. Applicants MUST include their Security Clearance Level, Investigation Type and Investigation Date clearly on their resume.</p>
<p><strong>Requirements:      <br /></strong>Education Requirements:Bachelor, Master or Doctorate of Science degree from an accredited course of study, in engineering, computer science, mathematics, physics or chemistry. ABET is the preferred, although not required, accreditation standard.2     <br />Security Clearance Requirement:Ability to Obtain a Clearance &#8211; US Citizenship Required</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>&#160;</p>
<p>I’m guessing they either already have someone and this was posted for compliance purposes, or the recruiter combined every IT post they’ve ever created and they have no idea what type of candidate they need.&#160; If you do happen to match these qualifications, please apply to Boeing here &#8211; <a href="http://www.techcareers.com/JS/General/Job.asp?id=20411505">http://www.techcareers.com/JS/General/Job.asp?id=20411505</a>.</p>
<p>Let me know if you make it so I can create a shrine for you here in my cubicle.</p>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D727&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D727&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D727&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D727&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=727</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Chat Catcher: Catching More of the Conversation</title>
		<link>http://www.voiceoftech.com/swhitley/?p=726</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=726#comments</comments>
		<pubDate>Sun, 14 Jun 2009 07:15:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=726</guid>
		<description><![CDATA[How many times have you announced a new blog post on Twitter, and rather than commenting on your blog, people tweet their comments?&#160; If those tweets contain links to your post, Chat Catcher will capture them for you, but what if the tweets don&#8217;t have links?&#160; Now, with a new feature called Chat Threads, those [...]]]></description>
			<content:encoded><![CDATA[<p>How many times have you announced a new blog post on Twitter, and rather than commenting on your blog, people tweet their comments?&#160; If those tweets contain links to your post, <a href="http://chatcatcher.com">Chat Catcher</a> will capture them for you, but what if the tweets don&#8217;t have links?&#160; Now, with a new feature called Chat Threads, those tweets will be captured as well.</p>
<p>The example below shows a conversation that occurred on Twitter around a blog post that was written by Neville Hobson (<a href="http://www.nevillehobson.com/2009/06/12/twitter-drives-3m-sales-for-dell/">Dell&#8217;s Twitter Sales</a>).&#160; The first tweet (actually a retweet) contained a direct link to the original blog post.&#160; That first tweet would have always been captured by Chat Catcher.&#160; With the new Chat Threads feature, replies to those tweets are captured as well, even though they don&#8217;t contain links to the blog post.</p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/07/profile-photo-normal.jpg"><img title="Profile_photo_normal" style="border-right: 0px; border-top: 0px; display: inline; margin: 10px; border-left: 0px; border-bottom: 0px" height="52" alt="Profile_photo_normal" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/07/profile-photo-normal-thumb.jpg" width="52" align="left" border="0" /></a> </p>
<ul>
<li>
<p><a href="http://twitter.com/jjdeeleythinks">jjdeeleythinks</a>: RT <a href="http://twitter.com/Hitwise_UK">@Hitwise_UK</a>: Dell&#8217;s Twitter sales (through <a href="http://twitter.com/DellOutlet">@DellOutlet</a>) have now reached $3m <a href="http://bit.ly/SRsBh">http://bit.ly/SRsBh</a> (blog post by <a href="http://twitter.com/jangles">@jangles</a>)&#160; </p>
<ul>
<li>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/07/bear-normal.jpg"><img title="bear_normal" style="border-right: 0px; border-top: 0px; display: inline; margin: 10px; border-left: 0px; border-bottom: 0px" height="52" alt="bear_normal" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/07/bear-normal-thumb.jpg" width="52" align="left" border="0" /></a> </p>
<p><a href="http://twitter.com/theraromachine">theraromachine</a>: <a href="http://twitter.com/jjdeeleythinks">@jjdeeleythinks</a> Dell say $2million&#8230; since 2007 (<a href="http://tinyurl.com/nh6a82">http://tinyurl.com/nh6a82</a> &#8230; so that&#8217;s what between 2,000 &#8211; 3,000 laptops? Not amazing.&#160; </p>
</li>
<li>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/07/profile-photo-normal1.jpg"><img title="Profile_photo_normal" style="border-right: 0px; border-top: 0px; display: inline; margin: 10px; border-left: 0px; border-bottom: 0px" height="52" alt="Profile_photo_normal" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/07/profile-photo-normal-thumb1.jpg" width="52" align="left" border="0" /></a> </p>
<p><a href="http://twitter.com/jjdeeleythinks">jjdeeleythinks</a>: <a href="http://twitter.com/theraromachine">@theraromachine</a> not sure its quite that underwhelming. Selling on a relatively new channel is still interesting + how many leads generated? </p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/07/bear-normal1.jpg"><img title="bear_normal" style="border-right: 0px; border-top: 0px; display: inline; margin: 10px; border-left: 0px; border-bottom: 0px" height="52" alt="bear_normal" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/07/bear-normal-thumb1.jpg" width="52" align="left" border="0" /></a> </p>
</li>
<li>
<p><a href="http://twitter.com/theraromachine">theraromachine</a>: <a href="http://twitter.com/jjdeeleythinks">@jjdeeleythinks</a> globally though? I guess it only gets better &#8211; and probably much better return than on advertising&#8230; </p>
<p>&#160;</p>
</li>
</ul>
</li>
</ul>
<p>&#160;</p>
<p>Chat Threads round out the conversation.&#160; In just this one example, the blog author might have missed three-quarters of what was said.</p>
<p>The Chat Threads feature has just been introduced and we will be closely monitoring its progress.&#160; Don&#8217;t expect to see these types of tweets appear for all blog posts, but you may start to notice them with your more popular posts.</p>
<p>As always, I look forward to your comments and suggestions.</p>
<p>&#160;</p>
<div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:09768317-d14d-4486-be5a-f0d053f7ad90" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a href="http://technorati.com/tags/Twitter" rel="tag">Twitter</a>,<a href="http://technorati.com/tags/Chat+Catcher" rel="tag">Chat Catcher</a>,<a href="http://technorati.com/tags/Blog+Comments" rel="tag">Blog Comments</a></div>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D726&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D726&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D726&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D726&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=726</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>I was a victim of the Twitpocalypse</title>
		<link>http://www.voiceoftech.com/swhitley/?p=720</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=720#comments</comments>
		<pubDate>Sun, 14 Jun 2009 03:03:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=720</guid>
		<description><![CDATA[If you use Twitter, no doubt you&#8217;ve read something about the &#8220;Twitpocalypse&#8221; that occurred this week.&#160; It&#8217;s one of those things that a regular Twitter user should never really have to know anything about, except that the problem can (and actually did) cause a few applications to stop working.
I made it through relatively unscathed.&#160; The [...]]]></description>
			<content:encoded><![CDATA[<p>If you use Twitter, no doubt you&#8217;ve read something about the &#8220;<a href="http://www.macworld.com/article/141146/2009/06/twitpocalypse_twitter.html">Twitpocalypse</a>&#8221; that occurred this week.&nbsp; It&#8217;s one of those things that a regular Twitter user should never really have to know anything about, except that the problem can (and actually did) cause a few applications to stop working.</p>
<p>I made it through relatively unscathed.&nbsp; The majority of my Twitter programs were fine.&nbsp; I learned a long time ago to define my ids as character types.&nbsp; This provides the greatest degree of flexibility if a another service implements an unexpected change.</p>
<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/06/windowslivewriterf5a9278cca13-bc0dbringbeatback.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 10px; border-right-width: 0px" height="189" alt="bringbeatback" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/06/windowslivewriterf5a9278cca13-bc0dbringbeatback-thumb.png" width="244" align="left" border="0"></a> To understand the Twitpocalypse, it&#8217;s helpful to know how Twitter stores your tweets.&nbsp; A numeric id is assigned to every tweet in the Twitter system.&nbsp; Presumably, the tweet ids began at the number 1 and have been incrementing ever since.&nbsp; In the world of computing, numbers can be stored as different types and each type has a maximum value.&nbsp; At certain points, the tweet ids will exceed the limits of each numeric type.&nbsp; Although this doesn&#8217;t directly affect the Twitter service (they&#8217;ve used numeric types that have maximums well beyond the current ids), it can have an impact on services that download tweets.&nbsp; Some services may have defined the tweet id as a numeric type that can&#8217;t handle the larger numbers.&nbsp; </p>
<p>Picture a classroom where a teacher uses one of those fancy calculators with a display that goes well beyond the basic eight digits.&nbsp; Most of the students use the same calculator, but one of the students didn&#8217;t get the note and bought a simple eight-digit device.&nbsp; The student with the basic calculator will do fine for most of the class and will have no problems keeping up with all of the computations.&nbsp; Then one fateful day, the teacher puts up a nine-digit problem.&nbsp; Even though everyone else is fine, the one student&#8217;s work is kaput.&nbsp; (We might stop here to discuss the value of throwing away all of the calculators and doing the math by hand, but that&#8217;s a different post.)</p>
<p>So to complete the example, the teacher (Twitter) can continue to calculate numbers on into the future, but the student with the basic calculator is stuck (Twitterific) until he buys a calculator that can handle the additional digits.&nbsp; Most Twitter applications developers have been aware of this situation for awhile and it should have come as no surprise.</p>
<p>I did have one interesting issue pop up (I won&#8217;t mention the application since I&#8217;m its only user).&nbsp; The bug was something that I wouldn&#8217;t necessarily call obvious, and although in hindsight it seems simple enough, it was a little tricky to figure out.&nbsp; This bug also highlights the fact that you can run into problems with your code even if the data field is defined correctly in the database.</p>
<blockquote><p>I also treated the id as a numeric value and didn&#8217;t place quotes around it.</p>
</blockquote>
<p>The section of code that was causing an error contained several select statements, an update, and an insert.&nbsp; The error message that I received was roughly along these lines, <strong>&#8220;varchar could not be converted to int and resulted in an overflow error.&#8221;</strong>&nbsp; I was expecting one of the update or insert statements to be the cause.&nbsp; I spent several minutes scratching my head while trying to figure out why everything looked right and still wasn&#8217;t working.&nbsp; As it turns out, it was the select statement that was throwing the error.&nbsp; That was a surprise, but how did it happen?</p>
<p>Within my code, I had previous pulled a twitter id from the database in one of the early select statements.&nbsp; Since this id didn&#8217;t come from an external source, I wasn&#8217;t performing a check of the input.&nbsp; I also treated the id as a numeric value and didn&#8217;t place quotes around it.&nbsp; The statement worked fine until the Twitpocalypse.</p>
<p><font color="#0080ff">&#8220;select * from {table} where id = 2560000000&#8243; </font></p>
<p>&#8220;id&#8221; is defined as varchar in the database &#8212; notice the absence of quotes around the literal, 2560000000.</p>
<p>My lazy programming worked because the database was recognizing the number (sans the quotation marks) as an integer, which it then converted to varchar for the comparison to id.&nbsp; After the Twitpocalypse, the number was too large to be converted to a signed integer.&nbsp; Instead of simply converting the number directly to a character or a different numeric type, the database threw an error and the select statement failed.</p>
<p>So, obviously I should I have used quotation marks in the first place, or better yet, I should have used parameters.&nbsp; In a rush in the wee hours of the night, we don&#8217;t always write perfect code.&nbsp; This is a great reminder for me to skip shortcuts and hopefully it will help someone else avoid this issue in the future.</p>
<p>&nbsp;</p>
<div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:cab52211-83b8-45e1-a86d-0a9a7e9932df" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a href="http://technorati.com/tags/twitter" rel="tag">twitter</a>,<a href="http://technorati.com/tags/programming" rel="tag">programming</a>,<a href="http://technorati.com/tags/twitpocalypse" rel="tag">twitpocalypse</a></div>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D720&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D720&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D720&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D720&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=720</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Chat Catcher: Evolution</title>
		<link>http://www.voiceoftech.com/swhitley/?p=717</link>
		<comments>http://www.voiceoftech.com/swhitley/?p=717#comments</comments>
		<pubDate>Wed, 27 May 2009 06:25:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.voiceoftech.com/swhitley/?p=717</guid>
		<description><![CDATA[ I&#8217;ve been working feverishly on my main development project, Chat Catcher.&#160; That&#8217;s the service that scans Twitter, Indenti.ca, and FriendFeed for blog comments.&#160; When Chat Catcher finds a comment, it posts it back to the original blog post.&#160; If you&#8217;ve spent any time here, you&#8217;ll see Twitter comments on many of the posts; that&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/05/windowslivewriterchatcatcherevolution-1496adna-2.jpg"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 10px; border-right-width: 0px" height="124" alt="dna" src="http://www.voiceoftech.com/swhitley/wp-content/uploads/2009/05/windowslivewriterchatcatcherevolution-1496adna-thumb.jpg" width="124" align="left" border="0"></a> I&#8217;ve been working feverishly on my main development project, <a href="http://chatcatcher.com/">Chat Catcher</a>.&nbsp; That&#8217;s the service that scans <a href="http://twitter.com">Twitter</a>, <a href="http://identi.ca">Indenti.ca</a>, and <a href="http://friendfeed.com">FriendFeed</a> for blog comments.&nbsp; When Chat Catcher finds a comment, it posts it back to the original blog post.&nbsp; If you&#8217;ve spent any time here, you&#8217;ll see Twitter comments on many of the posts; that&#8217;s Chat Catcher.&nbsp; It&#8217;s a fun project, but I haven&#8217;t written much about it&#8230;because I&#8217;ve been working so hard on it.&nbsp; I even skipped an entire chapter of Chat Catcher&#8217;s evolution as it pulled itself from the brink of the deadpool and returned, Sawyer-esque to <a href="http://www.answers.com/topic/the-adventures-of-tom-sawyer-novel-1">witness its own funeral</a>. </p>
<p>But the past couple of weeks have been a bit unreal for me.&nbsp; When I was having trouble funding Chat Catcher, Neville Hobson, a famous blogger and happy Chat Catcher user, wrote a post called <a href="http://www.nevillehobson.com/2009/05/08/chat-catcher-needs-a-white-knight/">Chat Catcher Needs a White Knight</a>.&nbsp; Within a few days, that post brought me together with an extraordinary group of gentlemen in the UK.&nbsp; The relationship has resulted in the following announcement:</p>
<blockquote><p>Chat Catcher is pleased to announce the completion of an investment round with Ocasta Labs, an early stage technology investment group.&nbsp; Ocasta Labs have injected both funds and resources to extend the Chat Catcher team and to accelerate development of the service.</p>
</blockquote>
<p>So the big news is that Chat Catcher will not only continue to exist, it will thrive.&nbsp; Ocasta Labs will help me strengthen the Chat Catcher service, and we&#8217;ll even evolve the service so that it keeps pace with the constantly changing world of social media.
<p>If you have a blog, any type of blog, <a href="http://chatcatcher.com">give Chat Catcher a try</a>.&nbsp; There&#8217;s a special plugin for WordPress and John Eckman recently released a Drupal Module.&nbsp; If you download the <a href="http://wordpress.org/extend/plugins/chatcatcher">WordPress plugin</a>, there&#8217;s even a framework that allows you to build a custom plugin for other types of blogs [yes, I know I need to document this].
<p>For me, this is an exciting service, and I&#8217;m happy to be joining forces with some really exceptional people who&#8217;ll help me expand its features.&nbsp; Do I know exactly what those features are today? &#8212; honestly no, but there are some amazing possibilities.&nbsp; It may sound odd to most people, but writing code and developing systems is fun, and I&#8217;m having a blast working through the evolution of Chat Catcher.</p>
<p>&nbsp;</p>
<div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:4ae41f58-6d72-4899-bba7-8c20e2117891" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px">Technorati Tags: <a href="http://technorati.com/tags/Twitter" rel="tag">Twitter</a>,<a href="http://technorati.com/tags/Chat%20Catcher" rel="tag">Chat Catcher</a>,<a href="http://technorati.com/tags/FriendFeed" rel="tag">FriendFeed</a>,<a href="http://technorati.com/tags/Indenti.ca" rel="tag">Indenti.ca</a>,<a href="http://technorati.com/tags/blog" rel="tag">blog</a>,<a href="http://technorati.com/tags/comments" rel="tag">comments</a>,<a href="http://technorati.com/tags/Ocasta%20Labs" rel="tag">Ocasta Labs</a>,<a href="http://technorati.com/tags/WordPress" rel="tag">WordPress</a>,<a href="http://technorati.com/tags/Drupal" rel="tag">Drupal</a>,<a href="http://technorati.com/tags/trackback" rel="tag">trackback</a>,<a href="http://technorati.com/tags/tweetback" rel="tag">tweetback</a></div>
<p>Reference Lookup: <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D717&lookup=&toolset=Dictionary">Dictionary</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D717&lookup=&toolset=Thesaurus">Thesaurus</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D717&lookup=&toolset=Encyclopedia">Encyclopedia</a>, <a href="http://www.postref.com/postref/?url=http%3A%2F%2Fwww.voiceoftech.com%2Fswhitley%2F%3Fp%3D717&lookup=">& More</a><br>powered by PostRef</p>]]></content:encoded>
			<wfw:commentRss>http://www.voiceoftech.com/swhitley/?feed=rss2&amp;p=717</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
