<?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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Buzzbird</title>
	
	<link>http://getbuzzbird.com/bb</link>
	<description>The Awesome Open Source Twitter Client</description>
	<lastBuildDate>Thu, 19 May 2011 17:29:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Buzzbird" /><feedburner:info uri="buzzbird" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>Buzzbird</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Twitter Changes to Authentication</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/iMGs93By7Z4/</link>
		<comments>http://getbuzzbird.com/bb/2011/05/twitter-changes-to-authentication/#comments</comments>
		<pubDate>Thu, 19 May 2011 17:29:02 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=237</guid>
		<description><![CDATA[Occasionally I use Twitter clients other than Buzzbird just to kick the tires and see what else is out there. By far, my favorite for OSX was Kiwi . It was lightweight, nice to look at, and did everything I needed. Whenever I was discouraged by working on Buzzbird, Kiwi was usually my go-to client. [...]]]></description>
			<content:encoded><![CDATA[<p>Occasionally I use Twitter clients other than Buzzbird just to kick the tires and see what else is out there. By far, my favorite for OSX was <a href="http://kiwi-app.net/" target="_blank">Kiwi</a> . It was lightweight, nice to look at, and did everything I needed. Whenever I was discouraged by working on Buzzbird, Kiwi was usually my go-to client.</p>
<p>Yesterday, Twitter, Inc. announced that they were making changes to their authentication logic. The short story is, third-party Twitter clients (i.e., those not written by Twitter, Inc) will now need to send users through a web browser to authenticate if they want to have read access to direct messages.</p>
<p>I was going to post a reaction to this, but the author of Kiwi expressed my feelings so perfectly, I&#8217;m just going to link to them here:</p>
<p><a href="http://yourhead.tumblr.com/post/5550105265/i-love-you-kiwi-i-know">http://yourhead.tumblr.com/post/5550105265/i-love-you-kiwi-i-know</a></p>
<p>I threaten to quit working on Buzzbird every other month. Every time I do, I&#8217;m encouraged by how many people turn out on the blog and ask me not to, because they actually like my little client. I&#8217;m glad it was useful to folks.</p>
<p>Like Isaiah (the Kiwi dude), I wrote Buzzbird for fun and never had any anticipation to make money on the thing. I did it primarily as a way to teach myself Javascript &#8211; a language that I wanted to get a lot better at. Now, it&#8217;s fulfilled that goal.</p>
<p>If anyone else wants to fork the repo and start their own build of Buzzbird &#8211; have at it. That&#8217;s the beauty of open source. It&#8217;s under the MIT license, so you can basically do whatever you want with it. Maybe someone will be ambitious and write the OAuth authentication piece &#8211; it shouldn&#8217;t be that hard, as XUL is already a quasi web-browser. But I don&#8217;t have the time or energy to turn on a dime and rewrite stuff every time Twitter decides to make a non backward compatible change that hurts the third party clients that they&#8217;d be content to not have around.</p>
<p>If you&#8217;re looking for a decent FOSS client to replace Buzzbird, I recommend <a href="http://getspaz.com/">Spaz</a>. The guy in charge of the project is really cool, and he&#8217;s dedicated to open source. Yeah, it&#8217;s written in Adobe AIR (*shudder*). But I think Ed Finkler (a.k.a. <a href="https://twitter.com/#!/funkatron" target="_blank">funkatron</a>, the aforementioned guy in charge of Spaz) has plans to re-implement it in other platforms (perhaps Titanium Desktop?). Another bonus is that Spaz doesn&#8217;t treat Identi.ca like a second-class citizen. So if open source is your thing, check Spaz out.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/ZLjGKhCjr6Ex-W8V87ClNzksh1E/0/da"><img src="http://feedads.g.doubleclick.net/~a/ZLjGKhCjr6Ex-W8V87ClNzksh1E/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ZLjGKhCjr6Ex-W8V87ClNzksh1E/1/da"><img src="http://feedads.g.doubleclick.net/~a/ZLjGKhCjr6Ex-W8V87ClNzksh1E/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/iMGs93By7Z4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2011/05/twitter-changes-to-authentication/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2011/05/twitter-changes-to-authentication/</feedburner:origLink></item>
		<item>
		<title>Just When I Was Starting To Get Interested Again…</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/e9A9uJa89oo/</link>
		<comments>http://getbuzzbird.com/bb/2011/03/just-when-i-was-starting-to-get-interested-again/#comments</comments>
		<pubDate>Fri, 11 Mar 2011 21:53:35 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=235</guid>
		<description><![CDATA[I&#8217;ve been noodling around w/ Buzzbird again, trying to add tabs to the interface. I was starting to maybe get psyched to do some work on it. Then today, I see this announcement from Twitter (thanks to @funkatron, lead developer of @spaz, for calling my attention to it).  This is from https://groups.google.com/d/msg/twitter-api-announce/yCzVnHqHIWo/76QIxS6NXykJ : Hey all, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been noodling around w/ Buzzbird again, trying to add tabs to the interface. I was starting to maybe get psyched to do some work on it.  Then today, I see this announcement from Twitter (thanks to @<a href="http://twitter.com/funkatron">funkatron</a>, lead developer of @<a href="http://twitter.com/spaz">spaz</a>, for calling my attention to it).  This is from <a href="https://groups.google.com/d/msg/twitter-api-announce/yCzVnHqHIWo/76QIxS6NXykJ">https://groups.google.com/d/msg/twitter-api-announce/yCzVnHqHIWo/76QIxS6NXykJ</a> :</p>
<blockquote><p>Hey all, I’d like to give you an update about the state of the Twitter Platform and hopefully provide some much requested guidance.</p>
<p>Since this time last year, Twitter use has skyrocketed.  We’ve grown from 48 million to 140 million tweets a day and we’re registering new accounts at an all-time record.  This massive base of users, publishers, and businesses is a giant playground for developers to build their own businesses on, and this means the opportunity has grown for everyone.</p>
<p>With more people joining Twitter and accessing the service in multiple ways, a consistent user experience is more crucial than ever.  As we talked about last April, this was our motivation for buying Tweetie and developing our own official iPhone app.  It is the reason why we have developed official apps for the Mac, iPad, Android and Windows Phone, and worked with RIM on their Twitter for Blackberry app. As a result, the top five ways that people access Twitter are official Twitter apps.</p>
<p>Still, our user research shows that consumers continue to be confused by the different ways that a fractured landscape of third-party Twitter clients display tweets and let users interact with core Twitter functions.  For example, people get confused by websites or clients that display tweets in a way that doesn’t follow our design guidelines, or when services put their own verbs on tweets instead of the ones used on Twitter.  Similarly, a number of third-party consumer clients use their own versions of suggested users, trends, and other data streams, confusing users in our network even more.  Users should be able to view, retweet, and reply to @nytimes’ tweets the same way; see the same profile information about @whitehouse; and be able to join in the discussion around the same trending topics as everyone else across Twitter.</p>
<p><strong>A Consistent User Experience</strong></p>
<p>Twitter is a network, and its network effects are driven by users seeing and contributing to the network’s conversations.  We need to ensure users can interact with Twitter the same way everywhere.  Specifically:</p>
<ul>
<li>The mainstream consumer client experience.  Twitter will provide the primary mainstream consumer client experience on phones, computers, and other devices by which millions of people access Twitter content (tweets, trends, profiles, etc.), and send tweets.  If there are too many ways to use Twitter that are inconsistent with one another, we risk diffusing the user experience.  In addition, a number of client applications have repeatedly violated Twitter’s Terms of Service, including our user privacy policy.  This demonstrates the risks associated with outsourcing the Twitter user experience to third parties.  Twitter has to revoke literally hundreds of API tokens / apps a week as part of our trust and safety efforts, in order to protect the user experience on our platform.</li>
<li>Display of tweets in 3rd-party services. We need to ensure that tweets, and tweet actions, are rendered in a consistent way so that people have the same experience with tweets no matter where they are.   For example, some developers display “comment”, “like”, or other terms with tweets instead of  “follow, favorite, retweet, reply” &#8211; thus changing the core functions of a tweet.</li>
</ul>
<p>With this in mind, we’ve updated our Terms of Service: <a href="http://dev.twitter.com/pages/api_terms" target="_blank">http://dev.twitter.com/pages/api_terms</a>.</p>
<p><strong>The Opportunity for Developers</strong></p>
<p><span style="color: #ff0000;"><em>Developers have told us that they’d like more guidance from us about the best opportunities to build on Twitter.  More specifically, developers ask us if they should build client apps that mimic or reproduce the mainstream Twitter consumer client experience.  The answer is no. </em><span style="color: #000000;">(emphasis added)</span></span></p>
<p>If you are an existing developer of client apps, you can continue to serve your user base, but we will be holding you to high standards to ensure you do not violate users’ privacy, that you provide consistency in the user experience, and that you rigorously adhere to all areas of our Terms of Service.  We have spoken with the major client applications in the Twitter ecosystem about these needs on an ongoing basis, and will continue to ensure a high bar is maintained.</p>
<p>As we point out above, we need to move to a less fragmented world, where every user can experience Twitter in a consistent way.  This is already happening organically &#8211; the number and market share of consumer client apps that are not owned or operated by Twitter has been shrinking.  According to our data, 90% of active Twitter users use official Twitter apps on a monthly basis.</p>
<p>In contrast, the number of successful applications and companies in the Twitter ecosystem that focus on areas outside of the mainstream consumer client experience has grown quickly, and this is a trend we want to continue to support and help grow.  Twitter will always be a platform on which a smart developer with a great idea and some cool technology can build a great company of his or her own.  And, with record user growth, there has never been a better time to build into Twitter.</p>
<p>Some key areas where ecosystem developers are thriving:</p>
<ul>
<li>Publisher tools.  Companies such as <a href="http://www.socialflow.com/" target="_blank">SocialFlow</a> help publishers optimize how they use Twitter, leading to increased user engagement and the production of the right tweet at the right time.</li>
<li>Curation.  <a href="http://www.massrelevance.com/" target="_blank">Mass Relevance</a> and <a href="http://www.sulia.com/" target="_blank">Sulia</a> provide services for large media brands to select, display, and stream the most interesting and relevant tweets for a breaking news story, topic or event.</li>
<li>Realtime data signals.  Hundreds of companies use real-time Twitter data as an input into ranking, ad targeting, or other aspects of enhancing their own core products.  <a href="http://klout.com/" target="_blank">Klout</a> is an example of a company which has taken this to the next level by using Twitter data to generate reputation scores for individuals.  Similarly, <a href="http://gnip.com/" target="_blank">Gnip</a> syndicates Twitter data for licensing by third parties who want to use our real-time corpus for numerous applications (everything from hedge funds to ranking scores).</li>
<li>Social CRM, entreprise clients, and brand insights.  Companies such as <a href="http://hootsuite.com/" target="_blank">HootSuite</a>, <a href="http://cotweet.com/" target="_blank">CoTweet</a>, <a href="http://www.radian6.com/" target="_blank">Radian6</a>, <a href="http://seesmic.com/" target="_blank">Seesmic</a>, and <a href="http://www.crimsonhexagon.com/" target="_blank">Crimson Hexagon</a> help brands, enterprises, and media companies tap into the zeitgeist about their brands on Twitter, and manage relationships with their consumers using Twitter as a medium for interaction.</li>
<li>Value-added content and vertical experiences.  Emerging services like <a href="http://www.formspring.me/" target="_blank">Formspring</a>, <a href="http://foursquare.com/" target="_blank">Foursquare</a>, <a href="http://instagr.am/" target="_blank">Instagram</a>, and <a href="http://www.quora.com/" target="_blank">Quora</a> have built into Twitter by allowing users to share unique and valuable content to their followers, while, in exchange, the services get broader reach, user acquisition, and traffic.</li>
</ul>
<p>A lot of Twitter’s success is attributable to a diverse ecosystem of more than 750,000 registered apps.  We will continue to support this innovation.  We are excited to be working with our developer community to create a consistent and innovative experience for the many millions of users who have come to depend on Twitter every day.</p>
<p>As always, we welcome your feedback and questions.</p>
<p>Best, Ryan</p>
<p>@<a href="http://twitter.com/rsarver" target="_blank">rsarver</a></p></blockquote>
<p>So, that&#8217;s it then. Twitter grew and thrived in a flourishing ecosystem that encouraged active, open development. Hundreds of competing client apps were created to support the platform. Somehow this undesirable &#8220;inconsistent user experience&#8221; managed to shepherd in a new era of microblogging. But now Twitter doesn&#8217;t want us anymore.</p>
<p>And suddenly I really don&#8217;t feel like working on Buzzbird.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/oZdDfrgmFOA38Af19ZctlnQjKNI/0/da"><img src="http://feedads.g.doubleclick.net/~a/oZdDfrgmFOA38Af19ZctlnQjKNI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/oZdDfrgmFOA38Af19ZctlnQjKNI/1/da"><img src="http://feedads.g.doubleclick.net/~a/oZdDfrgmFOA38Af19ZctlnQjKNI/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/e9A9uJa89oo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2011/03/just-when-i-was-starting-to-get-interested-again/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2011/03/just-when-i-was-starting-to-get-interested-again/</feedburner:origLink></item>
		<item>
		<title>Like a Zombie, Buzzbird won’t stay dead. Version 0.9 is out</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/MLrilnKMMM4/</link>
		<comments>http://getbuzzbird.com/bb/2010/12/like-a-zombie-buzzbird-wont-die-version-0-9-is-out/#comments</comments>
		<pubDate>Sun, 19 Dec 2010 01:02:46 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=226</guid>
		<description><![CDATA[First, the bad news.  I am discontinuing development of the Windows version of Buzzbird. Here&#8217;s the deal &#8211; it&#8217;s ugly looking, and I don&#8217;t have time to make it better looking. Packaging it is a major pain &#8216;cuz I&#8217;ve got to use a third-party installer thing to build an MSI file. I need to run [...]]]></description>
			<content:encoded><![CDATA[<p>First, the bad news.  I am discontinuing development of the Windows version of Buzzbird. Here&#8217;s the deal &#8211; it&#8217;s ugly looking, and I don&#8217;t have time to make it better looking. Packaging it is a major pain &#8216;cuz I&#8217;ve got to use a third-party installer thing to build an MSI file. I need to run Windows in a VM because I don&#8217;t have a Windows machine.  Worse still, I&#8217;ve never heard a peep from a single Windows user, so I don&#8217;t know if there are any.</p>
<p>Basically, Windows is a nuisance and I&#8217;m barely able to keep up with Buzzbird as it is, so I&#8217;m killing it to keep my sanity. If there&#8217;s a Windows user out there who wants to check the source out from git and make a package, go nuts! I&#8217;ll post it on the site if you want.</p>
<p>OK, so the good news: I couldn&#8217;t totally leave Buzzbird broken and bruised. There aren&#8217;t many features in this release, but I did fix the issue w/ the 53 bit Javascript integer ID overflow &#8211; what this means is, retweets and clicking on replies should behave a lot more normally and a lot less randomly.</p>
<p>I also added filters for Paper.li (The ____ Daily is out!), and GetGlue.com (&#8216;cuz I really don&#8217;t give a crap what you&#8217;re watching on TV). And I fixed that nagging bug where Buzzbird was truncating native retweets and didn&#8217;t need to be.</p>
<p>An intrepid Buzzbird user, <a href="http://twitter.com/#!/PotHix" target="_blank">PotHix</a>, was awesome enough to contribute a .deb building process for people on a Debian variant in Linuxland, but unfortunately I&#8217;m too much of a putz to figure out how to make it work. I sent him a tweet to ask him help me out, hopefully he sees it and we can have a nice deb for you.</p>
<p>You can snag version 0.9 on <a href="http://getbuzzbird.com/bb/downloads/">the Downloads page</a>.</p>
<p>Happy tweeting! Or &#8216;denting! Or whatever it is you do!</p>

<p><a href="http://feedads.g.doubleclick.net/~a/79MpEA7ixGIenoaqNsG4JrXlsAc/0/da"><img src="http://feedads.g.doubleclick.net/~a/79MpEA7ixGIenoaqNsG4JrXlsAc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/79MpEA7ixGIenoaqNsG4JrXlsAc/1/da"><img src="http://feedads.g.doubleclick.net/~a/79MpEA7ixGIenoaqNsG4JrXlsAc/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/MLrilnKMMM4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2010/12/like-a-zombie-buzzbird-wont-die-version-0-9-is-out/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2010/12/like-a-zombie-buzzbird-wont-die-version-0-9-is-out/</feedburner:origLink></item>
		<item>
		<title>Yeah, Buzzbird’s Pretty Broken Right Now</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/QxDp5V-4xkI/</link>
		<comments>http://getbuzzbird.com/bb/2010/12/yeah-buzzbirds-pretty-broken-right-now/#comments</comments>
		<pubDate>Thu, 02 Dec 2010 22:52:56 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=223</guid>
		<description><![CDATA[So Twitter did some hokery pokery with the tweet IDs in its API. I kinda knew this was coming, but I didn&#8217;t think we&#8217;d be affected. Turns out I was wrong. Anyway, I know about the problem. I might have a fix eventually &#8211; or if you have one, submit a patch.]]></description>
			<content:encoded><![CDATA[<p>So Twitter did some hokery pokery with the tweet IDs in its API.  I kinda knew this was coming, but I didn&#8217;t think we&#8217;d be affected.  Turns out I was wrong.  </p>
<p>Anyway, I know about the problem. I might have a fix eventually &#8211; or if you have one, submit a patch.  <img src='http://getbuzzbird.com/bb/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>

<p><a href="http://feedads.g.doubleclick.net/~a/mCUdE3Q8gIn8C3gRt2s4zXVFw6Q/0/da"><img src="http://feedads.g.doubleclick.net/~a/mCUdE3Q8gIn8C3gRt2s4zXVFw6Q/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/mCUdE3Q8gIn8C3gRt2s4zXVFw6Q/1/da"><img src="http://feedads.g.doubleclick.net/~a/mCUdE3Q8gIn8C3gRt2s4zXVFw6Q/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/QxDp5V-4xkI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2010/12/yeah-buzzbirds-pretty-broken-right-now/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2010/12/yeah-buzzbirds-pretty-broken-right-now/</feedburner:origLink></item>
		<item>
		<title>I’m Pretty Much Done With Buzzbird</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/hts1QQ3cD5Q/</link>
		<comments>http://getbuzzbird.com/bb/2010/09/im-pretty-much-done-with-buzzbird/#comments</comments>
		<pubDate>Sun, 26 Sep 2010 02:44:50 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=220</guid>
		<description><![CDATA[So this is my announcement of semi-retiring from Buzzbird development for the near future. I hope to release one last bugfix version in the coming week, but that&#8217;ll probably be the last of it. I did this project for a few reasons. First, I didn&#8217;t like the Adobe AIR clients. I didn&#8217;t like having to [...]]]></description>
			<content:encoded><![CDATA[<p>So this is my announcement of semi-retiring from Buzzbird development for the near future. I hope to release one last bugfix version in the coming week, but that&#8217;ll probably be the last of it.</p>
<p>I did this project for a few reasons. First, I didn&#8217;t like the Adobe AIR clients. I didn&#8217;t like having to install a separate runtime, and I didn&#8217;t like how &#8220;foreign&#8221; the apps always looked on my desktop (I&#8217;m a Mac user, and I think Mac people tend to be fussier about this than others). When I started out, incredible as this might sound, there were actually very few desktop clients.  There was Twhirl and Tweetdeck, and Seemic didn&#8217;t even really exist yet.  I thought I could build my own cross-platform app that didn&#8217;t need AIR.</p>
<p>I also did it to learn Javascript. I&#8217;m a server-side web developer by trade, and wanted to do more client side stuff, but my lack of familiarity w/ Javascript held me back a bit.  XUL + Javascript + Cross-Platform Twitter Client seemed like a perfect match for me!</p>
<p>Since I started, I&#8217;ve come a long way learning Javascript. There are lots of clients to choose from now. I&#8217;ve done pretty much all I can with it, and maintaining it is more of a chore for me now than a labor of love.</p>
<p>I&#8217;m proud of how it turned out. There are plenty of Twitter clients out there with more features than Buzzbird, but it holds its own and does just about everything I need.  I&#8217;m surprised by how many Linux users there are &#8211; I used to be a Linux-on-the-desktop guy, so that makes me happy.  I was also surprised by the number of people out there running OSX 10.3 and earlier who have few other choices than Buzzbird.</p>
<p>So, I&#8217;m sorta calling it quits.  I say &#8220;sorta,&#8221; because I know I won&#8217;t be able to put it down entirely. There are still tiny tweaks I&#8217;ve made in master that aren&#8217;t in a general release, and there are a couple of bugfixes that I&#8217;ll feel guilty about if I don&#8217;t try to correct them, but I wouldn&#8217;t expect much more from me with Buzzbird.  I&#8217;m happy with what it is today.  I hope you are too.</p>
<p>And, it&#8217;s 100%, MIT-license, unadulterated open source.  Feel free to fork it in Github if you want to keep it going yourself.  <img src='http://getbuzzbird.com/bb/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

<p><a href="http://feedads.g.doubleclick.net/~a/NTbIwN4oPYy-SIlWK6F4Nd00zUA/0/da"><img src="http://feedads.g.doubleclick.net/~a/NTbIwN4oPYy-SIlWK6F4Nd00zUA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/NTbIwN4oPYy-SIlWK6F4Nd00zUA/1/da"><img src="http://feedads.g.doubleclick.net/~a/NTbIwN4oPYy-SIlWK6F4Nd00zUA/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/hts1QQ3cD5Q" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2010/09/im-pretty-much-done-with-buzzbird/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2010/09/im-pretty-much-done-with-buzzbird/</feedburner:origLink></item>
		<item>
		<title>Version 0.8 is Now Available!</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/gxKTG0PWQqo/</link>
		<comments>http://getbuzzbird.com/bb/2010/07/version-0-8-is-now-available/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 19:52:29 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=216</guid>
		<description><![CDATA[Finally, after a hiatus of Buzzbird releases, I have cooked up a new version of Buzzbird!  Here&#8217;s what&#8217;s in it: New Features Support for identi.ca Support for OAuth/xAuth authentication on Twitter. New Feature that allows you to filter tweets by service.  Hate Foursquare and Blip.fm updates?  Filter &#8216;em out! Support for web proxy servers. Indicator [...]]]></description>
			<content:encoded><![CDATA[<p>Finally, after a hiatus of Buzzbird releases, I have cooked up a new version of Buzzbird!  Here&#8217;s what&#8217;s in it:</p>
<h2>New Features</h2>
<ul>
<li>Support for identi.ca</li>
<li>Support for OAuth/xAuth authentication on Twitter.</li>
<li>New Feature that allows you to filter tweets by service.  Hate Foursquare and Blip.fm updates?  Filter &#8216;em out!</li>
<li>Support for web proxy servers.</li>
<li>Indicator for protected updates.</li>
<li>Indicator/link on updates that provide location information.</li>
<li>Separate Quote and Retweet actions &#8211; now you can decide on a case-by-case basis whether you want to do a &#8220;native&#8221; re-tweet, or just quote someone else&#8217;s update.</li>
<li>Reduced the amount of data that is stored in the DOM, which should improve performance a bit when switching between home timeline/mentions/direct messages.</li>
<li>Newer, slightly-more-attractive action buttons.</li>
<li>Moved the character counter to be closer to the tweet authoring section.</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li>Buzzbird will no longer display the direct message action button for users that do not follow you.</li>
<li>Buzzbird will no longer display the retweet action button for users that have protected their updates.</li>
<li>Mentions by people who you do not follow will now show up in your home timeline.</li>
<li>Fixed a bug that causes the quote and reply button to not always work when viewing conversations or single-user timelines.</li>
</ul>
<p>Visit the <a href="http://getbuzzbird.com/bb/downloads/">download page</a> to get it while it&#8217;s hot.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/35jUI0a-9Ahcmf9_ViKr6XPMZwI/0/da"><img src="http://feedads.g.doubleclick.net/~a/35jUI0a-9Ahcmf9_ViKr6XPMZwI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/35jUI0a-9Ahcmf9_ViKr6XPMZwI/1/da"><img src="http://feedads.g.doubleclick.net/~a/35jUI0a-9Ahcmf9_ViKr6XPMZwI/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/gxKTG0PWQqo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2010/07/version-0-8-is-now-available/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2010/07/version-0-8-is-now-available/</feedburner:origLink></item>
		<item>
		<title>Autocomplete friends’ names – Unsatisfactory Progress</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/bBaW-3mPKwo/</link>
		<comments>http://getbuzzbird.com/bb/2010/07/autocomplete-friends-names-unsatisfactory-progress/#comments</comments>
		<pubDate>Mon, 26 Jul 2010 20:58:55 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[autocomplete]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=214</guid>
		<description><![CDATA[I spent a while today trying to get auto-complete of friend names working.  I tried several different mechanisms: I added jQuery to Buzzbird, and tried to use it on XUL documents directly.  I hoped that XUL and HTML were similar enough that I&#8217;d be able to use a jQuery autocomplete plugin to do the autocompletion, [...]]]></description>
			<content:encoded><![CDATA[<p>I spent a while today trying to get auto-complete of friend names working.  I tried several different mechanisms:</p>
<ol>
<li>I added jQuery to Buzzbird, and tried to use it on XUL documents directly.  I hoped that XUL and HTML were similar enough that I&#8217;d be able to use a jQuery autocomplete plugin to do the autocompletion, but had no luck. I patched up jQuery a bit, and tried out two different plugins, but ran into too many roadblocks to ever make it work.</li>
<li>XUL has auto-complete text fields, so I tried using one, along with a custom component that allowed me to populate the valid auto-completions programatically.  Unfortunately, the XUL widgets that support built-in autocompletion do not support multi-line entry with word-wrap, so even though I managed to get the completion drop-down list to work, it&#8217;s not a viable solution.</li>
<li>I tried making my own popup using XUL popup menu elements, and I made the popup appear when the user hit the @ sign while typing.  Unfortunately, XUL popup menus appear to be modal, and forcing the user to choose from a list when a list item may not even be applicable won&#8217;t work</li>
</ol>
<p>I did manage to get the Twitter API call to fetch all your friends&#8217; screen names working, but because I can&#8217;t get the UI to do what I want, it&#8217;s kinda useless right now.  I&#8217;m pretty bummed and frustrated.  I&#8217;ll probably have to release 0.8 without this feature.</p>
<p>I might be able to build in a sort-of &#8220;address book&#8221; feature that a user could bring up if they forget the name of a friend, but that falls short of my original goal of username completion by quite a bit.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/mjwlouT_aIYNPygfOdDB5-TscEE/0/da"><img src="http://feedads.g.doubleclick.net/~a/mjwlouT_aIYNPygfOdDB5-TscEE/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/mjwlouT_aIYNPygfOdDB5-TscEE/1/da"><img src="http://feedads.g.doubleclick.net/~a/mjwlouT_aIYNPygfOdDB5-TscEE/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/bBaW-3mPKwo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2010/07/autocomplete-friends-names-unsatisfactory-progress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2010/07/autocomplete-friends-names-unsatisfactory-progress/</feedburner:origLink></item>
		<item>
		<title>I’m not dead. No, really. I’m not.</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/iItQjyjEV4A/</link>
		<comments>http://getbuzzbird.com/bb/2010/06/im-not-dead-no-really-im-not/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 00:50:01 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=195</guid>
		<description><![CDATA[Okay, so here&#8217;s the deal. OAuth sucks. Why does it suck? Because it was not designed for desktop applications. It was definitely not designed for open source desktop applications.  What do I mean by that? One of the things that OAuth tries to do is verify that the application requesting access to Twitter really is [...]]]></description>
			<content:encoded><![CDATA[<p>Okay, so here&#8217;s the deal.</p>
<p>OAuth sucks. Why does it suck? Because it was not designed for desktop applications. It was <em>definitely</em> not designed for open source desktop applications.  What do I mean by that?</p>
<div id="attachment_196" class="wp-caption alignright" style="width: 205px"><a href="http://www.funnyhub.com/pictures/pages/stomach-suck-in.html"><img class="size-medium wp-image-196 " title="5645_2823_stomach-suck-in" src="http://getbuzzbird.com/bb/wp-content/uploads/2010/06/5645_2823_stomach-suck-in-230x300.jpg" alt="" width="195" height="240" /></a><p class="wp-caption-text">Suck.</p></div>
<p>One of the things that OAuth tries to do is verify that the application requesting access to Twitter really is the application that it says it is.  This is a good thing &#8211; e.g., if you give Buzzbird permission to access your timeline, then you don&#8217;t want some malicious application pretending to be Buzzbird accessing your data in Buzzbird&#8217;s name.  That would suck. It would suck for you (the user whose trust was betrayed), and it would suck for me, because Twitter could mistakenly think Buzzbird is being malicious.</p>
<p>How does OAuth ensure that an application is really Buzzbird, and not some impostor?  Well, the application making the API calls has a &#8220;shared secret&#8221; that is assigned to it by Twitter.  The application stores this secret, and sends it along with every request to Twitter (this isn&#8217;t exactly what it does, but you can think of it that way).</p>
<h3>That&#8217;s the crux of the problem.</h3>
<p>The secret is <em>embedded in the application</em>.  This works just fine for web-based applications where (hopefully) a copy of the application doesn&#8217;t end up in the wild, but when you&#8217;ve got an app sitting who-knows-where on who-knows-what machine, it breaks down.  For open source apps, it&#8217;s obvious &#8211; if you grab the source code from github you can see the application key.  Okay, so let&#8217;s say you don&#8217;t put the key in the source repo.  Well, in Buzzbird&#8217;s case, the application is distributed as a bunch of plaintext javascript files.  You can easily read through them and find the key.</p>
<p style="text-align: center;">
<div id="attachment_198" class="wp-caption alignleft" style="width: 197px"><a href="http://www.flickr.com/photos/wwworks/4612188594/"><img class="size-medium wp-image-198 " title="4612188594_79313b221f" src="http://getbuzzbird.com/bb/wp-content/uploads/2010/06/4612188594_79313b221f-187x300.jpg" alt="" width="187" height="300" /></a><p class="wp-caption-text">This is pretty much the worst place to keep your keys (CC Image Courtesy woodlywonderworks)</p></div>
<p>Okay, so what about compiled files? Well, any semi-competent hacker wannabe can run the <a href="http://unixhelp.ed.ac.uk/CGI/man-cgi?strings" target="_blank">strings command</a> on your binary and probably find your key.  If not, if you relish the tedium, you might be able to tease it out by dumping the image in a hex editor.</p>
<p>Even the most astute of developers who try to hide the key in the binary, by whatever clever means they have at their disposal, will still leave behind a trace of their key in the app. It will be on the potential hacker&#8217;s computer, and he has plenty of free time to find it.  There&#8217;s no way around it, OAuth is flawed when it comes to desktop applications.</p>
<p style="text-align: center;">
<div id="attachment_197" class="wp-caption alignright" style="width: 240px"><a href="http://getbuzzbird.com/bb/wp-content/uploads/2010/06/trojan_horse.jpg"><img class="size-full wp-image-197 " title="trojan_horse" src="http://getbuzzbird.com/bb/wp-content/uploads/2010/06/trojan_horse.jpg" alt="" width="230" height="300" /></a><p class="wp-caption-text">OAuth isn&#39;t clever enough to stop this malicious application.</p></div>
<h3>Buzzbird Status</h3>
<p>Regardless, I&#8217;ve implemented OAuth in Buzzbird (well, actually I implemented Twitter&#8217;s browser-free version of OAuth called xAuth, which is<em> even sillier</em> for its own reasons that I won&#8217;t get into here).</p>
<p>As you can imagine, <a href="http://groups.google.com/group/twitter-development-talk/browse_thread/thread/c18ade9d86c8b239/4561b1b469bf91f7?lnk=gst&amp;q=coming+soon#4561b1b469bf91f7" target="_blank">a few programmers are griping on the Twitter developer group</a> about OAuth&#8217;s shortcomings.  Lo and behold, Twitter has announced that it has a solution to plug this hole, and that they will reveal this solution &#8220;soon.&#8221;</p>
<p>Twitter has even been kind enough to delay the cutoff time after which OAuth would be the only permitted authentication mechanism.</p>
<p>Meanwhile, I&#8217;ve got a new version of Buzzbird kinda-sorta ready, and it has Proxy support and identi.ca support.  Unfortunately, I&#8217;m sitting on it while I wait for Twitter to share their latest idea on how to fix this. Hopefully whatever they announce won&#8217;t take me a few weeks to implement, like OAuth did.</p>
<p>I&#8217;ll keep you posted.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/UStoBMYd4yn04Mhf-0bsGgOG5hY/0/da"><img src="http://feedads.g.doubleclick.net/~a/UStoBMYd4yn04Mhf-0bsGgOG5hY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/UStoBMYd4yn04Mhf-0bsGgOG5hY/1/da"><img src="http://feedads.g.doubleclick.net/~a/UStoBMYd4yn04Mhf-0bsGgOG5hY/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/iItQjyjEV4A" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2010/06/im-not-dead-no-really-im-not/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2010/06/im-not-dead-no-really-im-not/</feedburner:origLink></item>
		<item>
		<title>xAuth/OAuth checked into master</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/HFgOgDA89gA/</link>
		<comments>http://getbuzzbird.com/bb/2010/05/xauthoauth-checked-into-master/#comments</comments>
		<pubDate>Mon, 10 May 2010 23:30:37 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=193</guid>
		<description><![CDATA[By now you may have heard that Twitter will be disabling basic HTTP authentication on API calls on June 30, 2010.  Twitter even made a pithy countdown page for it.  After June 30th, all Twitter clients will need to use OAuth to continue making authenticated API calls. I like to refer to this date as [...]]]></description>
			<content:encoded><![CDATA[<p>By now you may have heard that Twitter will be disabling basic HTTP authentication on API calls on June 30, 2010.  Twitter even made a pithy <a href="http://www.countdowntooauth.com/" target="_blank">countdown</a> page for it.  After June 30th, all Twitter clients will need to use OAuth to continue making authenticated API calls.</p>
<p>I like to refer to this date as the Oauthpocalypse.  Or even &#8220;Opocalypse&#8221;.</p>
<p>Rest assured, Buzzbird will be prepared to do battle on the side of good during the end times of basic authentication.  I have a vision (a &#8220;revelation,&#8221; if you will) of the souls of Twitter clients being expelled from the kingdom of Twitterdom.  They were cast asunder for callously hoarding the credentials of righteous users.  Yet I don&#8217;t judge (lest I be judged), for I too was a wayward spirit.  But I have seen the virtuous path.  Yea, I have seen the promised land, and brothers and sisters, that promised land is OAuth.</p>
<p>Now if only I had some icons that didn&#8217;t look like they were chiseled on stone tablets&#8230;</p>

<p><a href="http://feedads.g.doubleclick.net/~a/wN2KwahlAedZK5hOrYuS_kbyBh0/0/da"><img src="http://feedads.g.doubleclick.net/~a/wN2KwahlAedZK5hOrYuS_kbyBh0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/wN2KwahlAedZK5hOrYuS_kbyBh0/1/da"><img src="http://feedads.g.doubleclick.net/~a/wN2KwahlAedZK5hOrYuS_kbyBh0/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/HFgOgDA89gA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2010/05/xauthoauth-checked-into-master/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2010/05/xauthoauth-checked-into-master/</feedburner:origLink></item>
		<item>
		<title>Looking at identi.ca support, and…</title>
		<link>http://feedproxy.google.com/~r/Buzzbird/~3/LBS1JSgJ2h8/</link>
		<comments>http://getbuzzbird.com/bb/2010/04/looking-at-identi-ca-support-and/#comments</comments>
		<pubDate>Sat, 17 Apr 2010 14:10:19 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://getbuzzbird.com/bb/?p=190</guid>
		<description><![CDATA[&#8230;I&#8217;m not sure what I&#8217;m supposed to use for the API URL? Apparently, the http://identi.ca/api root is broken.  So&#8230; what am I supposed to use instead?  Just for yucks, I tried http://identi.ca/api w/ wget at the command line.  Lo and behold, it doesn&#8217;t work, just as advertised. Ultimately I&#8217;d love to be able to support [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230;I&#8217;m not sure what I&#8217;m supposed to use for the API URL?  Apparently, <a href="http://status.net/wiki/TwitterCompatibleAPI#API_root" target="_blank">the http://identi.ca/api root is broken</a>.  So&#8230; what am I supposed to use instead?  Just for yucks, I tried http://identi.ca/api w/ wget at the command line.  Lo and behold, it doesn&#8217;t work, just as advertised.</p>
<p>Ultimately I&#8217;d love to be able to support all kinds of status.net services, but I think it makes the most sense for identi.ca to be the first.  Can anyone help me out here?  What&#8217;s a working root of the API URL for identi.ca?</p>
<p>I suppose if I were feeling really ambitious I could look at the source for Gwibber. *sigh*</p>

<p><a href="http://feedads.g.doubleclick.net/~a/ik-2ewdPg0_n-jcuZczdkPUB0cA/0/da"><img src="http://feedads.g.doubleclick.net/~a/ik-2ewdPg0_n-jcuZczdkPUB0cA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ik-2ewdPg0_n-jcuZczdkPUB0cA/1/da"><img src="http://feedads.g.doubleclick.net/~a/ik-2ewdPg0_n-jcuZczdkPUB0cA/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Buzzbird/~4/LBS1JSgJ2h8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://getbuzzbird.com/bb/2010/04/looking-at-identi-ca-support-and/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		<feedburner:origLink>http://getbuzzbird.com/bb/2010/04/looking-at-identi-ca-support-and/</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 0.587 seconds. --><!-- Cached page generated by WP-Super-Cache on 2011-11-14 08:52:12 -->

