<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>I’m a software developer and entrepreneur currently living in Bellingham, Washington. 

I’m involved with ShareZen, Stride, Leatherbound.me, and the BIG Idea Lab.

I’m most interested in scalability, architecture and putting the Ruby on the Rails.

Follow me on Twitter, or drop me an email at adrian dot pike at gmail.com if you want to connect!



  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-2678611-4']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</description><title>Adrian Pike</title><generator>Tumblr (3.0; @adrianpike)</generator><link>http://adrianpike.tumblr.com/</link><item><title>How we used Rails &amp; Backbone.js to build a lightning-fast webapp.</title><description>&lt;p&gt;&lt;p class="p1"&gt;Whenever I build a greenfield webapp, there&amp;#8217;s a bunch of things that I take into consideration when deciding what tools to use. When we first sat down &amp;amp; started planning out &lt;a href="http://strideapp.com/" title="Stride"&gt;Stride&lt;/a&gt;, I immediately started thinking through how I was going to put it together, what tradeoffs we were going to have, and what kinds of tools would fit best.&lt;/p&gt;
&lt;p class="p1"&gt;There were four key things we wanted to solve with our choice of tech stack &amp;amp; architecture:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;We wanted it to be fast and responsive to the user. &lt;em&gt;Really&lt;/em&gt; fast.&lt;/li&gt;
&lt;li&gt;We wanted it to be maintainable moving forward, and make our lives easier rather than harder.&lt;/li&gt;
&lt;li&gt;If Stride wound up being a massive success, we wanted to be able to hire against our tech stack. A specific stack or framework affects hiring in two big ways - obviously it&amp;#8217;s nice when the talent pool for a given skillset is large, but good folks can learn new things easily. What your tool choice does affect, however, is who&amp;#8217;s interested in working with you. As an extreme example, building something in COBOL will self-select your applicants quite effectively.&lt;/li&gt;
&lt;li&gt;This fits into the last one nicely - we wanted to have &lt;em&gt;fun&lt;/em&gt; building it.&lt;/li&gt;
&lt;/ul&gt;&lt;p class="p1"&gt;So with those things in mind, we settled on the following big moving parts:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;We&amp;#8217;re using &lt;a href="http://backbonejs.org/" title="Backbone.js"&gt;Backbone.js&lt;/a&gt; to provide structure for our frontend, which is a hefty JavaScript app. Everything happens client-side, and is then persisted to the server asynchronously.&lt;/li&gt;
&lt;li&gt;The backend is Rails. We chose Rails over other options for a few reasons - Backbone was relatively new territory for us starting out, and if everything went poorly, we could implement more of the app in the Rails side if need be. We thought about working with a lighter Ruby framework like &lt;a href="http://www.sinatrarb.com/" title="Sinatra"&gt;Sinatra&lt;/a&gt; or &lt;a href="http://www.padrinorb.com/" title="Padrino"&gt;Padrino&lt;/a&gt;, but we decided that at least early on, more power &amp;amp; flexibility was better, and we&amp;#8217;d optimize later.&lt;/li&gt;
&lt;li&gt;Because so much of the app is client-side, we&amp;#8217;re using a messaging queue built with &lt;a href="http://nodejs.org/" title="Node.js"&gt;node.js&lt;/a&gt; and &lt;a href="http://socket.io/" title="Socket.io"&gt;socket.io&lt;/a&gt; to send server-initiated messages to the client. These might include user-facing alerts (think Rails&amp;#8217; flash messages), updates to your dashboard. We&amp;#8217;re currently using &lt;a href="https://github.com/maccman/juggernaut" title="Juggernaut"&gt;juggernaut&lt;/a&gt;, but we&amp;#8217;re looking at migrating to something else soon. I&amp;#8217;ve had to hack in SSL certificate chain support, and there&amp;#8217;s a few bugs that we&amp;#8217;ve found, but the big reason we&amp;#8217;re moving away is we want persistence for our messaging layer. The current frontrunner is &lt;a href="http://www.spire.io/" title="Spire.io"&gt;spire.io&lt;/a&gt; - their team has been very open and forthcoming when discussing our needs with them.&lt;/li&gt;
&lt;li&gt;All of our calculations and intelligence happens in a work queue. We&amp;#8217;re using &lt;a href="https://github.com/defunkt/resque/" title="Resque"&gt;Resque&lt;/a&gt; for this at the moment, but as we move forward and things get more complex, we&amp;#8217;ll likely wind up with something different at this level. Specifically, as our metrics calculations are going to get a lot more complex, I&amp;#8217;m exploring some of the various BigData offerings. I&amp;#8217;ve been exploring Hadoop and Mahout lately, and it&amp;#8217;s quite likely that we&amp;#8217;ll be leaning on them. Resque is great for simply getting things asynchronous, but our as intelligence calculations are getting more and more complicated, it&amp;#8217;s time to move to something more suited for it.&lt;/li&gt;
&lt;li&gt;We also have some API endpoints that are built with Sinatra. We hope to expose these soon to developers - if you&amp;#8217;re interested in building things with Stride, drop me a line - I&amp;#8217;d love to chat.&lt;/li&gt;
&lt;/ul&gt;&lt;p class="p1"&gt;There were some interesting lessons learned, especially with this being our first big backbone.js app as a team.&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Having clients be asynchronous was a huge boon for us under high load - the user received feedback immediately, and the actual persistence was able to take some time without the user having to think about it. This worked well for us because only one user can update a given dashboard - once we have multiple users, we&amp;#8217;ll have to work through concurrency resolution.&lt;/li&gt;
&lt;li&gt;We fell into some bad JavaScript practices early on, and didn&amp;#8217;t build as modular as possible. We expected too much out of Backbone, and didn&amp;#8217;t do a good enough job of building good, modular code. As with any tool, Backbone&amp;#8217;s just a tool - it&amp;#8217;s up to you how you use it.&lt;/li&gt;
&lt;li&gt;As you build more complicated user interaction on the client, keeping completely RESTful gets hard. Say, for example when you update Resource A, Resource B might need an update, but it has to be up to the server to decide. If there was a page refresh, that would be fine, but if you&amp;#8217;re interacting with a RESTful API, how does the server notify the client whether or not to update? Do you always call for an update? Do you attach extra information to the API response? Do you send an out-of-band message back to the client from the server using some sort of messaging layer? We&amp;#8217;re currently going with the extra information route, but we&amp;#8217;re planning to move to leveraging our messaging layer in the future.&lt;/li&gt;
&lt;li&gt;A framework itself can serve as documentation, but when you move outside that framework, documentation is needed. I don&amp;#8217;t need to have documentation describing the standard ActionController actions, for example. I don&amp;#8217;t need to tell someone what &amp;#8220;def show&amp;#8221; is doing. But once I step outside the framework, it needs documentation. We&amp;#8217;ve got a few places where we&amp;#8217;re doing totally non-standard things with either Rails or Backbone, and we haven&amp;#8217;t done a good enough job at explaining them to current or future developers.&lt;/li&gt;
&lt;/ul&gt;&lt;p class="p1"&gt;So that&amp;#8217;s a brief overview of the big moving parts of Stride, and some of the lessons we&amp;#8217;ve learned so far. It&amp;#8217;s been great fun, and I&amp;#8217;m very excited with where we&amp;#8217;re going. I hope you&amp;#8217;ll join us for the adventure.&lt;/p&gt;
&lt;p class="p1"&gt;If you&amp;#8217;ve got any comments or questions, please drop me a line on &lt;a href="http://twitter.com/adrianpike" title="@adrianpike"&gt;Twitter&lt;/a&gt;, or &lt;a href="http://news.ycombinator.com/item?id=4154639"&gt;join the discussion&lt;/a&gt; on Hacker News.&lt;/p&gt;&lt;/p&gt;</description><link>http://adrianpike.tumblr.com/post/25812863078</link><guid>http://adrianpike.tumblr.com/post/25812863078</guid><pubDate>Sun, 24 Jun 2012 16:20:00 -0700</pubDate></item><item><title>Analytics from Hacker News &amp; TechCrunch</title><description>&lt;p&gt;So we launched &lt;a href="http://strideapp.com/"&gt;Stride&lt;/a&gt; yesterday, and hit both the HN frontpage and TechCrunch within a half hour or so of each other. There was a bunch of learnings on the ops side that I&amp;#8217;ll save for another post, but one of the things that I&amp;#8217;m really excited about is that we have side by side traffic comparisons between TechCrunch &amp;amp; Hacker News.&lt;/p&gt;
&lt;p&gt;Hopefully I&amp;#8217;ll get the time to analyze and share more later, including some raw data, but here&amp;#8217;s some interesting takeaways I saw:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;We had ~4500 uniques driven while we were the TC top post &amp;amp; on the HN frontpage.&lt;/li&gt;
&lt;li&gt;Techcrunch drove a tiny bit over twice the uniques of Hacker News.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;[Subjective]&lt;/strong&gt; HN comments were way more insightful, interesting, and helpful.&lt;/li&gt;
&lt;li&gt;TechCrunch readers stayed on the site ~1 minute 20 seconds longer than HN readers.&lt;/li&gt;
&lt;li&gt;HN&amp;#8217;s bounce rate was ~65%, TC&amp;#8217;s was ~32%.&lt;/li&gt;
&lt;li&gt;HN&amp;#8217;s Pages/visit was 2.2, TC&amp;#8217;s was 3.4&lt;/li&gt;
&lt;li&gt;70% of TC viewers went through to our sign up page, whereas only 30% of HN viewers did.&lt;/li&gt;
&lt;li&gt;TC had 3% IE, HN had one dude.&lt;/li&gt;
&lt;li&gt;TC had 66% Chrome, 19% Firefox, 8% Safari.&lt;/li&gt;
&lt;li&gt;HN had 70% Chrome, 13% Firefox, 12% Safari&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Note: I sampled all this data around 10PM yesterday.&lt;/p&gt;</description><link>http://adrianpike.tumblr.com/post/19082430470</link><guid>http://adrianpike.tumblr.com/post/19082430470</guid><pubDate>Sat, 10 Mar 2012 14:50:00 -0800</pubDate></item><item><title>Moment.js - javascript date parsing/formatting/manipulating</title><description>&lt;a href="http://momentjs.com/"&gt;Moment.js - javascript date parsing/formatting/manipulating&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/16537166132</link><guid>http://adrianpike.tumblr.com/post/16537166132</guid><pubDate>Thu, 26 Jan 2012 13:12:46 -0800</pubDate></item><item><title>brain.js - neural networks &amp; classifiers in JavaScript.</title><description>&lt;a href="http://harthur.github.com/brain/"&gt;brain.js - neural networks &amp; classifiers in JavaScript.&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/16429605696</link><guid>http://adrianpike.tumblr.com/post/16429605696</guid><pubDate>Tue, 24 Jan 2012 15:03:05 -0800</pubDate></item><item><title>Signs you're not building an MVP.</title><description>&lt;a href="http://22ideastreet.com/blog/2012/01/11/signs-you-arent-really-building-a-minimum-viable-product/"&gt;Signs you're not building an MVP.&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/16316376913</link><guid>http://adrianpike.tumblr.com/post/16316376913</guid><pubDate>Sun, 22 Jan 2012 15:05:06 -0800</pubDate></item><item><title>On Content, Availability, and Piracy</title><description>&lt;p&gt;The two things that matter to me as a media consumer are content quality and availability. Price is very rarely a consideration when I make my buying decisions - there&amp;#8217;s a threshold of quality for my dollar, but if it meets that, I don&amp;#8217;t care if it&amp;#8217;s $2 or $20.&lt;/p&gt;
&lt;p&gt;From the perspective of Old media companies, piracy is about the money. &amp;#8220;They&amp;#8217;re stealing from us.&amp;#8221;&lt;/p&gt;
&lt;p&gt;From the perspective of a media consumer, piracy is about availability. &amp;#8220;I can watch the movie I want to watch, when I want to watch it.&amp;#8221;&lt;/p&gt;
&lt;p&gt;Old media is going to keep squashing piracy, and you know what&amp;#8217;s going to happen? People are going to follow the availability. Low-budget entertainment that&amp;#8217;s widely available is going to take off, and the movie studios are going to be left tilting at windmills.&lt;/p&gt;</description><link>http://adrianpike.tumblr.com/post/16244180409</link><guid>http://adrianpike.tumblr.com/post/16244180409</guid><pubDate>Sat, 21 Jan 2012 12:37:39 -0800</pubDate></item><item><title>Loving these shots from my old college roomie,...</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_lxx2bphIxK1qccmavo1_500.jpg"/&gt;&lt;br/&gt; Library &lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/tumblr_lxx2bphIxK1qccmavo2_500.jpg"/&gt;&lt;br/&gt; Press play&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/tumblr_lxx2bphIxK1qccmavo3_500.jpg"/&gt;&lt;br/&gt; Rust&lt;br/&gt;&lt;br/&gt; &lt;img src="http://25.media.tumblr.com/tumblr_lxx2bphIxK1qccmavo4_500.jpg"/&gt;&lt;br/&gt; B&amp;W&lt;br/&gt;&lt;br/&gt; &lt;p&gt;Loving these shots from my old college roomie, @josephrlee!&lt;/p&gt;
&lt;p&gt;&lt;a class="tumblr_blog" href="http://asleepystudio.tumblr.com/post/15978080564/vancouver-art"&gt;asleepystudio&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Vancouver is totes cool.&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://adrianpike.tumblr.com/post/15984047930</link><guid>http://adrianpike.tumblr.com/post/15984047930</guid><pubDate>Mon, 16 Jan 2012 18:01:02 -0800</pubDate></item><item><title>shim - simultaneous browsing across devices</title><description>&lt;a href="https://github.com/marstall/shim/"&gt;shim - simultaneous browsing across devices&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15973389532</link><guid>http://adrianpike.tumblr.com/post/15973389532</guid><pubDate>Mon, 16 Jan 2012 15:00:05 -0800</pubDate></item><item><title>Best CSS tabs I've seen to date!</title><description>&lt;a href="http://css-tricks.com/better-tabs-with-round-out-borders/"&gt;Best CSS tabs I've seen to date!&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15850959258</link><guid>http://adrianpike.tumblr.com/post/15850959258</guid><pubDate>Sat, 14 Jan 2012 15:01:05 -0800</pubDate></item><item><title>"Given enough eyeballs, all bugs are shallow."</title><description>“Given enough eyeballs, all bugs are shallow.”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;Eric S. Raymond (&lt;a href="http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ar01s04.html"&gt;http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ar01s04.html&lt;/a&gt;)&lt;/em&gt;</description><link>http://adrianpike.tumblr.com/post/15794805212</link><guid>http://adrianpike.tumblr.com/post/15794805212</guid><pubDate>Fri, 13 Jan 2012 15:00:05 -0800</pubDate></item><item><title>Flickr architecture - great sharding strategies &amp; ideas</title><description>&lt;a href="http://highscalability.com/flickr-architecture"&gt;Flickr architecture - great sharding strategies &amp; ideas&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15742743474</link><guid>http://adrianpike.tumblr.com/post/15742743474</guid><pubDate>Thu, 12 Jan 2012 15:01:06 -0800</pubDate></item><item><title>Etsy Architecture</title><description>&lt;a href="http://highscalability.com/blog/2012/1/9/the-etsy-saga-from-silos-to-happy-to-billions-of-pageviews-a.html"&gt;Etsy Architecture&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15690651971</link><guid>http://adrianpike.tumblr.com/post/15690651971</guid><pubDate>Wed, 11 Jan 2012 15:01:05 -0800</pubDate></item><item><title>On language hipsters, C++, and ego.</title><description>&lt;p&gt;I read an article today on Hacker News titled &amp;#8220;&lt;a href="http://rachelbythebay.com/w/2012/01/05/libraries/"&gt;Web programs written in C++ are no big deal&lt;/a&gt;.&amp;#8221;&lt;/p&gt;
&lt;p&gt;Hot damn, says me. Maybe it&amp;#8217;s a showcase of apps that utilize some of what C&amp;#8217;s good for. Maybe it&amp;#8217;s some examples of awesome sites that have lots of C/C++ in their backend. Maybe I&amp;#8217;ll get inspired to dust off my C skills and hack out some cool stuff.&lt;/p&gt;
&lt;p&gt;Nope — its instead a perfect example of language hipsterism and NIH syndrome, with some good points well hidden.&lt;/p&gt;
&lt;p&gt;NIH, for those not acquainted, stands for &amp;#8220;&lt;a href="http://en.wikipedia.org/wiki/Not_invented_here"&gt;Not Invented Here&lt;/a&gt;.&amp;#8221; It&amp;#8217;s an antipattern, not a good thing, and can often happen as a result of overgrown ego&amp;#8217;s. Do you really think your code is that much better than everyone else&amp;#8217;s? Can you honestly not trust something you didn&amp;#8217;t craft with your own two hands? Are you building a spaceship?&lt;/p&gt;
&lt;p&gt;Language hipsterism is when your language of choice is cooler, better, and better in bed than everybody else&amp;#8217;s. Almost every language is different. They all have their benefits, they all have their weaknesses.&lt;/p&gt;
&lt;p&gt;There are some good points that are brought up. Shiny object syndrome is a real problem. Community churn, lack of peer review, all of these are things that you have to think about and weigh when you make a language, framework, or infrastructure choice.&lt;/p&gt;
&lt;p&gt;The best developers I know have a giant collection of tools that they can apply to the task at hand, and are constantly learning new languages, techniques, and skills — not latching on to the one they&amp;#8217;re most comfortable with and calling it a career.&lt;/p&gt;
&lt;p&gt;Web apps written in C++ are no big deal. An app written in &lt;em&gt;assembly&lt;/em&gt; is no big deal. What is a big deal is using the wrong tool for the job because of ego, stubbornness, or inertia. We have the greatest collection of tools for software development we&amp;#8217;ve ever had — let&amp;#8217;s make use of them.&lt;/p&gt;</description><link>http://adrianpike.tumblr.com/post/15640968588</link><guid>http://adrianpike.tumblr.com/post/15640968588</guid><pubDate>Tue, 10 Jan 2012 15:41:10 -0800</pubDate></item><item><title>Boo - object oriented javascript syntactic sugar!</title><description>&lt;a href="http://killdream.github.com/blog/2011/11/for-sugary-object-oriented-js/index.html"&gt;Boo - object oriented javascript syntactic sugar!&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15638904576</link><guid>http://adrianpike.tumblr.com/post/15638904576</guid><pubDate>Tue, 10 Jan 2012 15:01:05 -0800</pubDate></item><item><title>Fountain codes</title><description>&lt;a href="http://blog.notdot.net/2012/01/Damn-Cool-Algorithms-Fountain-Codes"&gt;Fountain codes&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15534982025</link><guid>http://adrianpike.tumblr.com/post/15534982025</guid><pubDate>Sun, 08 Jan 2012 15:24:06 -0800</pubDate></item><item><title>Amazing JS Frameworks for 2012</title><description>&lt;a href="http://www.catswhocode.com/blog/javascript-frameworks-tools-and-techniques-to-create-killer-applications"&gt;Amazing JS Frameworks for 2012&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15475506476</link><guid>http://adrianpike.tumblr.com/post/15475506476</guid><pubDate>Sat, 07 Jan 2012 15:19:05 -0800</pubDate></item><item><title>Recruiting programmers</title><description>&lt;a href="http://cdixon.org/2011/12/29/recruiting-programmers-to-your-startup/"&gt;Recruiting programmers&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15420171424</link><guid>http://adrianpike.tumblr.com/post/15420171424</guid><pubDate>Fri, 06 Jan 2012 15:31:05 -0800</pubDate></item><item><title>Stallman was right. Damnit.</title><description>&lt;a href="http://www.osnews.com/story/25469/Richard_Stallman_Was_Right_All_Along"&gt;Stallman was right. Damnit.&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15366943556</link><guid>http://adrianpike.tumblr.com/post/15366943556</guid><pubDate>Thu, 05 Jan 2012 15:24:05 -0800</pubDate></item><item><title>file.js</title><description>&lt;a href="http://ericbidelman.tumblr.com/post/14866798359/introducing-filer-js"&gt;file.js&lt;/a&gt;</description><link>http://adrianpike.tumblr.com/post/15262463121</link><guid>http://adrianpike.tumblr.com/post/15262463121</guid><pubDate>Tue, 03 Jan 2012 15:20:05 -0800</pubDate></item><item><title>Why I'm buying my bag from Timbuk2.</title><description>&lt;p&gt;I&amp;#8217;ve been looking at buying a new bag ever since I got a DSLR. I need something that can hold both a Macbook Air and a decent-sized SLR with a few lenses, all the assorted chargers and sundries, and not scream &amp;#8220;steal me.&amp;#8221;&lt;/p&gt;
&lt;p&gt;The bag I use daily is an old Brenthaven laptop bag. I love it, but it just doesn&amp;#8217;t have room for a camera in it. One of the things I really love is its strap and pad - it&amp;#8217;s covered in this great rubbery coating that keeps it from wiggling &lt;em&gt;at all. &lt;/em&gt;Even on top of a slick coat in the rain, with just a little corner of the pad hanging off of my shoulder, I&amp;#8217;m confident that it&amp;#8217;s not going to slip off and send all my beloved gadgetry to the ground.&lt;/p&gt;
&lt;p&gt;My bag search got narrowed down to the &lt;a href="http://www.timbuk2.com/tb2/products/snoop-camera-messenger"&gt;Timbuk2 Snoop&lt;/a&gt; - I spent a while digging through reviews, and even ran to our local REI to actually feel some in my hands and see if I liked them. So far so good, but the strap worried me a touch. I&amp;#8217;ll often just throw the strap hanging off my shoulder when I&amp;#8217;m just going inside from the car or having a quick walk, and it felt like I&amp;#8217;d really want a better non-slip pad.&lt;/p&gt;
&lt;p&gt;So off to Twitter I went, only to be amazed with whoever&amp;#8217;s running Timbuk2&amp;#8217;s Twitter account.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i.imgur.com/UoLGJ.png"/&gt;&lt;/p&gt;
&lt;p&gt;Not only did they respond instantly, they actually retweeted it out to all their followers - within minutes I had a bunch of excellent ideas and suggestions.&lt;/p&gt;
&lt;p&gt;Now that&amp;#8217;s support done right, and they&amp;#8217;ve made a fan for life. I can&amp;#8217;t wait for my bag to show up.&lt;/p&gt;

&lt;p&gt;PS: The bag&amp;#8217;s on sale as well, snag one!&lt;/p&gt;</description><link>http://adrianpike.tumblr.com/post/15257658062</link><guid>http://adrianpike.tumblr.com/post/15257658062</guid><pubDate>Tue, 03 Jan 2012 13:53:30 -0800</pubDate></item></channel></rss>
