<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

  <title><![CDATA[David Smith]]></title>
  <link href="http://david-smith.org/atom.xml" rel="self"/>
  <link href="http://david-smith.org/"/>
  <updated>2013-06-06T16:53:59-04:00</updated>
  <id>http://david-smith.org/</id>
  <author>
    <name><![CDATA[David Smith]]></name>
    
  </author>
  <generator uri="http://octopress.org/">Octopress</generator>

  
  <entry>
      
    
    
        <title type="html"><![CDATA[Clockwork Updates]]></title>
        <link href="http://david-smith.org/blog/2013/06/06/a-clockwork-update/"/>
    
    
    <updated>2013-06-06T15:30:00-04:00</updated>
    <id>http://david-smith.org/blog/2013/06/06/a-clockwork-update</id>
    <content type="html"><![CDATA[<p>For a while now I&#8217;ve been collecting and <a href="http://david-smith.org/iosversionstats">publishing</a> the iOS version adoption in my <a href="http://itunes.apple.com/us/app/audiobooks/id311507490?mt=8&amp;partnerId=30&amp;siteID=IzE7m699rYo">Audiobooks</a> apps.  Since the introduction of over-the-air updates in iOS 5 the rate of adoption by the general population has become extremely consistent.  It seems as though Apple has the process of migrating the majority of their users to the latest OS within a few days down to a science.</p>

<p>I was curious how consistent adoption was over different releases so I took a look at the three most recent broad OS updates: 6.1.0, 6.1.2 &amp; 6.1.3 (I didn&#8217;t consider 6.1.1 and 6.1.4 because they are only targeted to a single device). Plotting the adoption rate of these OS versions resulted in a rather stunning graph.</p>

<center>
<div id="launchadoption"></div>
</center>


<script type="text/javascript">
  $(function () {
      var chart;
      $(document).ready(function() {
          chart = new Highcharts.Chart({
              chart: {
                height:300,
                width:400,
                  renderTo: 'launchadoption',
                  type: 'spline'
              },
              title: {
                  text: 'Percent Adoption Rate (Days since release)'
              },
              xAxis: {
                  categories: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14'],    
                  tickmarkPlacement: 'on',
                  title: {
                      enabled: false
                  },
                labels: {
                    step: 1,
                }
              },
            legend: {
            enabled: true,
            reversed: true
  }
  ,
              yAxis: {
                  tickInterval: 10,
                  min:0,
                  max:100,
                  title: {
                      text: null
                  },
  opposite: true
              },
           credits: {
                   enabled: false
                },
              plotOptions: {
                  area: {
                    animation: false,
                      stacking: 'percent',
                      lineColor: '#ffffff',
                      lineWidth: 1,
                      marker: {
                        enabled:false
                      }
                  }
              },
              series: [

              {name: '6.1.0',data : [ 2 , 10 , 20 , 27 , 35 , 42 , 45 , 49 , 53 , 54 , 57 , 57 , 58 , 62 ],marker : {
                    enabled : false,
                }},
              {name: '6.1.2',data : [ 2 , 10 , 19 , 26 , 34 , 42 , 45 , 48 , 49 , 54 , 54 , 57 , 56 , 57 ],marker : {
                    enabled : false,
                }},
              {name: '6.1.3',data : [ 2 , 10 , 18 , 24 , 33 , 39 , 43 , 44 , 49 , 50 , 50 , 54 , 57 , 55  ],marker : {
                    enabled : false,
                }},
      ]
          });
      });
  });
  </script>


<p>It looks like an OS update can now expect roughly 50% adoption within a week, followed by a gradual but solid growth thereafter.  The consistency of this pattern appears remarkably stable.</p>

<p>While an interesting data point to consider on its own I think this is most significant in what it means for next week&#8217;s WWDC/iOS 7 announcements.  It is widely rumored that Apple has significant overhauls planned for iOS both visually and functionally.  If true, this could put developers in an awkward position where supporting older iOS versions will be particularly difficult.</p>

<p>Most previous major OS updates contained changes that were largely additive and served to expand what an application could do.  However, iOS 7 may change the user experience so dramatically that having the same code work usefully in both contexts could become a daunting challenge.  It is reassuring that adoption across compatible devices will likely be quick enough to make it feasible to go iOS 7 only.  I wouldn&#8217;t be at all surprised if Apple encouraged this by pushing all their own apps to iOS 7 the day it is released.</p>

<hr/>


<p>If you are curious what the full adoption curves look like for the year-to-date.  Here is the full chart.</p>

<div id="allplatforms" style="padding: 5 5"></div>




<script type="text/javascript">
  $(function () {
      var chart;
      $(document).ready(function() {
          chart = new Highcharts.Chart({
              chart: {
                height:300,
                  renderTo: 'allplatforms',
                  type: 'area'
              },
              title: {
                  text: 'All Platforms'
              },
              xAxis: {
categories: ['01-04', '01-05', '01-06', '01-07', '01-08', '01-09', '01-10', '01-11', '01-12', '01-13', '01-14', '01-15', '01-16', '01-17', '01-18', '01-19', '01-20', '01-21', '01-22', '01-23', '01-24', '01-25', '01-26', '01-27', '01-28', '01-29', '01-30', '01-31', '02-01', '02-02', '02-03', '02-04', '02-05', '02-06', '02-07', '02-08', '02-09', '02-10', '02-11', '02-12', '02-13', '02-14', '02-15', '02-16', '02-17', '02-18', '02-19', '02-20', '02-21', '02-22', '02-23', '02-24', '02-25', '02-26', '02-27', '02-28', '03-01', '03-02', '03-03', '03-04', '03-05', '03-06', '03-07', '03-08', '03-09', '03-10', '03-11', '03-12', '03-13', '03-14', '03-15', '03-16', '03-17', '03-18', '03-19', '03-20', '03-21', '03-22', '03-23', '03-24', '03-25', '03-26', '03-27', '03-28', '03-29', '03-30', '03-31', '04-01', '04-02', '04-03', '04-04', '04-05', '04-06', '04-07', '04-08', '04-09', '04-10', '04-11', '04-12', '04-13', '04-14', '04-15', '04-16', '04-17', '04-18', '04-19', '04-20', '04-21', '04-22', '04-23', '04-24', '04-25', '04-26', '04-27', '04-28', '04-29', '04-30', '05-01', '05-02', '05-03', '05-04', '05-05', '05-06', '05-07', '05-08', '05-09', '05-10', '05-11', '05-12', '05-13', '05-14', '05-15', '05-16', '05-17', '05-18', '05-19', '05-20', '05-29', '05-30', '05-31', '06-01', '06-02', '06-03', '06-04', '06-05', '06-06'],    
    tickmarkPlacement: 'on',
                  title: {
                      enabled: false
                  },
                labels: {
                    step: 20,
                }
              },
  legend: {
     enabled: true,
      reversed: true
  }
  ,
              yAxis: {
    tickInterval: 10,
                  title: {
                      text: null
                  },
  opposite: true
              },
           credits: {
                   enabled: false
                },
              plotOptions: {
                  area: {
                    animation: false,
                      stacking: 'percent',
                      lineColor: '#ffffff',
                      lineWidth: 1,
                      marker: {
                        enabled:false
                      }
                  }
              },
              series: [

{name: '6.1.4',data : [0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,1.5,3.1,3.2,5.1,6.0,6.9,6.5,7.9,7.5,8.799999999999999,9.6,8.9,9.8,8.5,8.3,9.4,9.5,10.0,9.700000000000001,11.1,10.5,9.0,11.5,9.8,11.200000000000001,10.4,10.7]},{name: '6.1.3',data : [0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.9,9.5,17.7,24.0,32.9,38.9,43.0,44.1,48.6,49.9,50.2,54.400000000000006,56.699999999999996,55.2,56.699999999999996,57.8,60.699999999999996,58.099999999999994,59.0,60.4,59.4,61.5,60.3,62.3,63.6,62.3,61.5,61.4,64.3,62.5,63.3,62.5,65.0,66.10000000000001,63.0,64.7,64.3,65.3,64.0,63.5,63.7,65.4,66.9,65.8,64.4,66.2,63.5,63.0,62.4,61.0,62.3,62.7,61.199999999999996,62.2,60.8,58.8,61.5,61.0,61.199999999999996,59.9,60.3,60.199999999999996,59.3,61.9,60.8,60.199999999999996,64.60000000000001,59.599999999999994,63.0,63.1,62.6,61.9]},{name: '6.1.2',data : [0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.7000000000000002,10.299999999999999,18.9,26.0,33.800000000000004,42.199999999999996,45.4,48.4,48.699999999999996,53.6,53.6,56.49999999999999,55.800000000000004,57.099999999999994,59.8,61.4,61.8,63.7,62.1,62.7,63.7,63.3,64.1,61.1,64.8,63.9,65.0,65.2,63.6,55.1,49.2,43.0,35.0,28.999999999999996,27.200000000000003,23.599999999999998,20.7,20.5,17.1,16.2,14.499999999999998,15.0,14.299999999999999,13.4,12.1,13.200000000000001,13.600000000000001,11.1,12.1,10.9,11.5,11.0,10.2,11.200000000000001,11.1,10.4,9.8,10.2,10.4,9.700000000000001,7.9,9.2,9.8,9.6,8.9,9.1,8.4,7.7,8.200000000000001,8.7,8.4,8.799999999999999,7.3999999999999995,6.6000000000000005,9.5,8.1,8.7,8.3,7.6,7.6,7.3999999999999995,7.9,7.1,6.800000000000001,7.3,7.3,7.3999999999999995,7.7,7.000000000000001,7.000000000000001,6.9,6.4,6.6000000000000005,6.4,6.4,7.3999999999999995,6.800000000000001,6.7,5.7,6.0]},{name: '6.1.1',data : [0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,2.1,4.6,6.6000000000000005,7.3,9.3,10.8,11.799999999999999,12.1,10.6,10.100000000000001,6.4,4.8,3.9,3.6999999999999997,3.9,2.7,2.5,2.1,2.0,1.4000000000000001,1.6,1.4000000000000001,1.4000000000000001,1.2,1.3,1.0,1.0,1.2,0.8,0.8999999999999999,1.2,1.0,1.0,1.0,1.0,0.6,0.8999999999999999,0.8999999999999999,0.7000000000000001,0.7000000000000001,1.0,1.2,0.7000000000000001,0.7000000000000001,0.5,1.0,0.6,0.5,0.6,1.0,0.7000000000000001,0.5,0.6,0.5,0.5,0.7000000000000001,0.6,0.4,0.7000000000000001,0.3,0.4,0.4,0.5,0.7000000000000001,0.7000000000000001,0.6,0.6,0.6,0.3,0.4,0.4,0.4,0.3,0.4,0.8,0.5,0.3,0.3,0.3,0.4,0.3,0.5,0.2,0.2,0.5,0.4,0.5,0.5,0.4,0.6,0.3,0.4,0.2,0.4,0.2,0.3,0.4,0.5,0.3,0.3,0.2,0.3,0.2,0.5,0.4,0.2,0.2]},{name: '6.1.0',data : [0.0,0.0,0.0,0.0,0.0,0.0,0.1,0.0,0.0,0.0,0.1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.0,10.100000000000001,19.5,27.400000000000002,35.199999999999996,42.199999999999996,45.1,48.6,52.7,53.5,56.49999999999999,57.4,58.099999999999994,61.5,60.9,57.699999999999996,58.5,56.49999999999999,55.400000000000006,55.50000000000001,54.800000000000004,51.9,48.5,43.6,36.3,34.1,28.199999999999996,21.8,19.1,17.599999999999998,16.5,14.799999999999999,13.700000000000001,11.600000000000001,10.2,11.799999999999999,10.4,8.200000000000001,9.700000000000001,9.8,10.0,9.700000000000001,8.799999999999999,8.0,7.6,8.799999999999999,8.3,7.8,7.5,7.3999999999999995,7.199999999999999,7.5,7.6,6.9,5.8999999999999995,5.5,5.6000000000000005,6.6000000000000005,6.1,6.2,6.800000000000001,4.1000000000000005,5.0,4.6,5.1,4.6,5.2,5.3,4.2,5.1,4.5,3.8,4.2,4.8,4.7,4.3999999999999995,4.5,4.7,4.9,4.9,5.0,4.3,4.3,3.6999999999999997,4.3,5.1,5.0,5.0,4.3999999999999995,3.8,4.7,4.1000000000000005,4.3,3.9,3.4000000000000004,3.8,3.6999999999999997,4.0,4.2,3.5999999999999996,4.1000000000000005,3.6999999999999997,3.6999999999999997,3.4000000000000004,3.8,4.1000000000000005,3.0,3.2,3.1,3.6999999999999997,3.4000000000000004,2.8000000000000003,4.2,2.9000000000000004,3.5000000000000004,3.6999999999999997,3.2,3.2,3.5999999999999996,3.5000000000000004,2.9000000000000004,3.0]},{name: '6.0.2',data : [9.4,10.0,9.9,11.600000000000001,10.5,10.6,10.7,11.0,9.700000000000001,10.7,10.6,9.3,10.6,10.4,10.6,10.4,10.4,12.2,11.3,10.8,11.3,11.600000000000001,11.1,10.4,11.0,8.7,7.3999999999999995,7.000000000000001,4.6,4.9,4.5,3.5000000000000004,3.6999999999999997,2.9000000000000004,2.4,3.1,2.1999999999999997,2.4,1.7000000000000002,2.8000000000000003,2.3,1.7000000000000002,1.9,2.1999999999999997,2.1,2.1999999999999997,1.9,1.7999999999999998,1.5,2.0,1.3,1.3,1.4000000000000001,1.2,1.4000000000000001,1.0999999999999999,1.3,1.3,1.5,1.2,1.2,1.5,1.2,1.3,1.0,1.0,1.0,1.0999999999999999,1.0,0.8,1.0999999999999999,1.5,1.0999999999999999,1.2,1.5,1.2,0.8999999999999999,0.7000000000000001,1.0,0.8,1.0999999999999999,1.0,1.9,1.0,1.3,0.7000000000000001,0.6,0.8999999999999999,0.7000000000000001,0.7000000000000001,0.5,0.8999999999999999,0.7000000000000001,0.8,0.8999999999999999,0.6,1.0,0.6,0.6,0.5,0.8999999999999999,0.6,0.6,0.8,0.7000000000000001,0.6,0.6,0.6,0.8,0.5,0.8,0.8,1.0,0.6,0.7000000000000001,0.5,0.8,0.7000000000000001,0.5,0.4,0.7000000000000001,0.6,1.0,0.5,0.7000000000000001,0.4,0.4,0.6,0.7000000000000001,0.6,0.5,0.5,0.4,0.5,0.5,0.6,0.6,0.5,0.5,0.5,0.6,0.5,0.8,0.5,0.6,0.3]},{name: '6.0.1',data : [67.5,65.9,66.9,65.60000000000001,68.5,66.9,67.60000000000001,67.4,68.7,68.4,68.0,68.89999999999999,66.7,68.60000000000001,66.0,66.3,69.0,67.10000000000001,67.10000000000001,67.5,65.7,69.1,69.0,68.5,66.3,59.4,52.5,45.6,38.800000000000004,32.2,30.4,29.2,24.4,24.099999999999998,21.2,20.200000000000003,20.3,18.9,20.200000000000003,18.7,17.4,16.6,15.4,15.299999999999999,15.0,17.2,18.099999999999998,14.899999999999999,14.6,13.5,13.900000000000002,12.3,13.5,12.3,13.200000000000001,11.1,12.0,11.0,10.4,11.5,10.5,11.5,10.100000000000001,9.1,9.4,9.6,9.700000000000001,9.700000000000001,10.0,9.9,9.3,10.299999999999999,9.4,9.700000000000001,10.2,9.0,8.6,8.6,7.7,8.1,8.3,9.0,8.4,7.7,8.5,8.1,9.0,7.8,6.9,7.8,6.2,7.3999999999999995,6.800000000000001,6.2,8.0,7.7,7.199999999999999,7.3999999999999995,7.199999999999999,7.000000000000001,7.1,6.2,6.7,5.800000000000001,6.2,6.9,6.5,6.2,6.9,5.5,5.4,5.8999999999999995,6.800000000000001,6.4,6.1,5.7,5.1,5.3,5.0,6.3,5.1,5.2,4.7,5.2,4.7,5.7,5.1,5.1,5.6000000000000005,5.6000000000000005,5.3,4.0,4.6,4.9,4.9,5.1,4.0,4.5,4.9,5.5,5.0,4.5,4.1000000000000005,4.6,5.1,5.8999999999999995]},{name: '6.0.0',data : [5.800000000000001,5.6000000000000005,6.4,6.4,5.6000000000000005,5.5,5.3,5.5,4.8,5.4,5.4,6.2,5.6000000000000005,5.3,6.3,4.6,5.2,5.1,5.8999999999999995,4.9,6.1,4.3999999999999995,4.6,5.1,5.6000000000000005,5.2,4.9,4.6,4.2,4.8,4.8,5.0,3.9,4.2,4.1000000000000005,3.6999999999999997,4.1000000000000005,3.5000000000000004,3.8,3.3000000000000003,3.2,3.8,3.2,3.5000000000000004,3.5000000000000004,4.1000000000000005,4.9,4.6,4.1000000000000005,3.6999999999999997,4.0,2.9000000000000004,3.4000000000000004,3.3000000000000003,3.2,3.0,3.3000000000000003,3.5999999999999996,3.3000000000000003,3.2,3.2,3.0,2.9000000000000004,2.8000000000000003,2.7,2.6,3.3000000000000003,3.0,3.2,2.9000000000000004,2.7,2.6,2.7,2.6,2.4,2.5,2.3,2.5,2.4,2.1999999999999997,2.5,2.1999999999999997,2.8000000000000003,2.9000000000000004,2.6,1.9,2.5,3.2,2.4,2.1999999999999997,1.7999999999999998,2.0,1.9,2.4,2.6,1.7000000000000002,2.1999999999999997,2.1999999999999997,2.0,2.5,1.9,2.6,1.6,2.7,2.0,2.1999999999999997,1.4000000000000001,1.5,2.4,2.1,2.5,2.7,2.6,2.3,2.3,3.4000000000000004,2.1999999999999997,3.0,2.1999999999999997,2.8000000000000003,1.7000000000000002,2.0,1.6,2.4,2.5,2.5,1.9,1.7999999999999998,1.7000000000000002,2.1999999999999997,2.1,2.1,2.6,3.3000000000000003,2.0,2.0,2.8000000000000003,2.5,1.7999999999999998,2.0,1.4000000000000001,2.3,1.7999999999999998,1.4000000000000001,1.6,1.6]},{name: '5.X',data : [15.1,15.7,14.6,14.7,13.100000000000001,14.299999999999999,14.6,13.900000000000002,14.799999999999999,13.5,13.600000000000001,13.900000000000002,14.299999999999999,13.600000000000001,14.499999999999998,16.2,12.5,13.3,13.200000000000001,14.6,14.499999999999998,12.9,13.5,13.5,12.9,14.2,13.5,13.200000000000001,14.899999999999999,13.5,12.6,11.799999999999999,13.200000000000001,13.200000000000001,13.3,12.9,12.5,11.700000000000001,11.200000000000001,12.5,12.3,12.3,14.099999999999998,11.899999999999999,11.600000000000001,10.5,10.6,12.3,12.0,12.4,12.2,13.200000000000001,11.600000000000001,11.3,12.2,11.799999999999999,11.700000000000001,11.899999999999999,10.2,11.600000000000001,11.600000000000001,10.8,11.200000000000001,10.100000000000001,11.600000000000001,10.7,10.5,11.899999999999999,11.600000000000001,13.600000000000001,11.3,10.5,11.3,11.3,10.5,12.2,11.4,12.0,12.7,12.2,9.0,10.299999999999999,9.3,9.3,10.5,12.0,9.2,10.8,11.1,11.4,11.0,10.6,11.5,11.4,10.5,11.600000000000001,11.4,9.3,9.5,10.100000000000001,11.3,11.899999999999999,9.1,9.6,10.6,11.700000000000001,12.0,10.7,10.6,10.6,10.9,9.700000000000001,10.8,12.9,11.799999999999999,10.5,10.8,10.9,11.799999999999999,10.299999999999999,10.6,11.899999999999999,9.8,10.9,9.2,9.0,10.4,9.4,9.4,10.9,9.8,10.100000000000001,10.299999999999999,10.4,10.0,10.4,10.100000000000001,9.8,9.2,9.700000000000001,8.3,9.4,8.200000000000001,7.3999999999999995,9.5,9.0]},{name: '4.X',data : [2.1999999999999997,2.8000000000000003,2.1,1.7000000000000002,2.1999999999999997,2.6,1.7999999999999998,2.1,2.0,2.1,2.3,1.7000000000000002,2.9000000000000004,2.1999999999999997,2.6,2.4,2.9000000000000004,2.3,2.5,2.1999999999999997,2.3,2.1,1.7999999999999998,2.3,2.3,2.4,2.1999999999999997,2.3,2.3,2.4,2.5,1.9,2.0,2.1999999999999997,2.4,2.7,2.9000000000000004,2.0,2.0,2.9000000000000004,1.7000000000000002,2.5,2.8000000000000003,2.3,2.1,2.3,2.0,1.9,2.5,2.0,1.7999999999999998,2.4,1.9,2.1,2.1,2.0,2.3,2.1,7.199999999999999,2.1,2.0,2.1999999999999997,1.7999999999999998,2.0,2.1999999999999997,2.7,1.7000000000000002,2.1999999999999997,1.6,1.7000000000000002,1.5,2.4,2.0,1.7000000000000002,2.1,2.0,1.5,1.6,1.9,2.3,2.1999999999999997,2.5,1.5,2.1,2.1999999999999997,2.1,2.0,1.9,1.7000000000000002,1.6,2.0,2.0,1.9,2.1999999999999997,1.4000000000000001,1.6,1.9,1.7000000000000002,1.9,1.6,1.4000000000000001,1.7000000000000002,2.3,2.9000000000000004,1.2,1.6,1.7000000000000002,1.6,1.7000000000000002,1.5,1.9,1.3,1.6,2.1999999999999997,2.0,1.3,1.2,1.4000000000000001,4.7,1.7000000000000002,1.5,1.9,2.3,1.6,1.5,1.4000000000000001,1.6,1.5,1.5,1.3,1.0999999999999999,1.7999999999999998,1.6,1.0999999999999999,2.1999999999999997,2.0,1.7000000000000002,1.5,1.2,1.3,1.4000000000000001,1.5,1.6,1.3,1.4000000000000001,1.4000000000000001]},        ]
          });
      });
  });
  </script>

  <br/><br/><a href="http://david-smith.org/blog/2013/06/06/a-clockwork-update/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Feed Wrangler, The First Month]]></title>
        <link href="http://david-smith.org/blog/2013/05/29/feed-wrangler/"/>
    
    
    <updated>2013-05-29T13:12:00-04:00</updated>
    <id>http://david-smith.org/blog/2013/05/29/feed-wrangler</id>
    <content type="html"><![CDATA[<p>One month ago I launched Feed Wrangler.  <a href="https://feedwrangler.net/welcome.html">Feed Wrangler</a> is an RSS aggregation platform that I&#8217;ve been working on since the start of this year.  Google killing off Reader forced me to <a href="http://david-smith.org/blog/2013/03/13/my-secret-project-feed-wrangler/">get my act together</a> and actually ship the product.  Here are some notes from the first month of it out in the wild.</p>

<p>Before I launched the aspect of it that I was most worried about was the price I charged.  Charging $19/year is a level that I simply didn&#8217;t have much experience with before this launch.  I am delighted to report that I&#8217;ve had little push back on the price.  It seems like people generally accept that providing a stable, sustainable platform costs money and are willing to pay to support that. It is a welcome break from the cut-throat world of the App Store.</p>

<p>When I released Feed Wrangler the response I received was far stronger than I was expecting or hoping for.  <a href="http://www.macstories.net/reviews/feed-wrangler-a-new-rss-reader-with-smart-streams-filters-read-later-integration/">It</a> <a href="http://www.tuaw.com/2013/05/08/feed-wrangler-a-subscription-based-rss-reader-for-web-and-ios/">was</a> <a href="http://9to5mac.com/2013/04/30/review-feed-wrangler-for-ios-rss-for-the-modern-world/">picked</a> <a href="http://pandodaily.com/2013/05/03/feed-wrangler-an-rss-reader-users-have-to-pay-to-access/">up</a> <a href="http://gizmodo.com/feed-wrangler-a-great-ios-reader-replacement-for-a-pri-486145419">by</a> <a href="http://www.macgasm.net/2013/05/22/feed-wrangler-review/">a</a> <a href="http://www.macworld.com/article/2036732/feed-wrangler-joins-rss-competition-with-paid-service.html">number</a> <a href="http://www.imore.com/feed-wrangler-makes-rss-easy-smart-streams-filters-and-easy-use-search-tools">of</a> <a href="http://blog.agilebits.com/2013/05/01/feed-wrangler-for-ios-debuts-with-1password-login-support/">sites</a> in its first week and got a solid adoption right out of the gate.  I&#8217;ve never built anything that was so difficult to scale out.  Most iOS apps scale themselves to some degree.  There is often some kind of backend you need to build out but previously for me this was never the core functionality.</p>

<p>Feed Wrangler <strong>is</strong> its backend.  Keeping the feed scrapers scraping, the website loading and the app syncing turned out to be a much more nuanced problem than I had anticipated.  The first week or two were full of late night server administration and frantic performance optimization to keep up with the demand.  Though I can&#8217;t really complain, it is a delightful problem to have.</p>

<p>While completely exhausting this was incredibly interesting work.  The most interesting part is the inter-disciplinary nature of the problems you have to solve.  I&#8217;m not just sitting in Xcode writing Objective-C.  I have to jump between low-level Linux kernel optimization, database tuning, application programming and visual design.  This stretches you as a developer and can be painful at times but that is how you get better too.</p>

<p>It looks like Feed Wrangler&#8217;s next chapter will be focused on helping 3rd Party developers integrate with the <a href="https://feedwrangler.net/developers">API</a>.  The range of developers that are working on adding Feed Wrangler support to their apps is stunning.  It looks like there will be great coverage across most platforms.  While I can&#8217;t talk about specific apps quite yet, I don&#8217;t think anyone will be disappointed by the integrations coming soon.</p>

<p>Feed Wrangler has grown in its first month of life into something I&#8217;m rather proud of.  I&#8217;ve been able to tame the technical growing pains and now find myself with a solid platform from which to grow.  I look toward the July 1 Google Reader funeral feeling comfortable about my preparation for it and hopeful that I&#8217;ll be able to provide a smooth transition for my fellow news junkies going forward.</p>

<hr />

<p>Some interesting facts about Feed Wrangler after a month of usage:</p>

<ul>
<li>67,457 RSS feeds</li>
<li>Which generate an average of 9,844 new articles each hour</li>
<li>The scrapers routinely sustain a combined 40Mb/s while pulling feeds</li>
<li>A typical user subscribes to around 65 feeds</li>
<li>The user with the most subscriptions watches 1,140 feeds</li>
<li>The most popular sites are <a href="http://daringfireball.net/">Daring Fireball</a>, <a href="http://www.marco.org">Marco.org</a>, <a href="http://www.tuaw.com">TUAW</a>, <a href="http://www.macrumors.com">MacRumors</a>, and <a href="http://www.macstories.net">MacStories</a>.</li>
</ul>

  <br/><br/><a href="http://david-smith.org/blog/2013/05/29/feed-wrangler/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[A History of Selling Out]]></title>
        <link href="http://david-smith.org/blog/2013/04/26/a-history-of-selling-out/"/>
    
    
    <updated>2013-04-26T09:56:00-04:00</updated>
    <id>http://david-smith.org/blog/2013/04/26/a-history-of-selling-out</id>
    <content type="html"><![CDATA[<center>
    <h2>WWDC 2008</h2>
    <img src = "http://david-smith.org/resources/soldout2008.png"/>
    <h4 style="margin-top:-5px">Sold out in 62 days.</h4>
    <br/><br/><br/>
    <h2>WWDC 2009</h2>
    <img src = "http://david-smith.org/resources/soldout2009.png"/>
    <h4 style="margin-top:-5px">Sold out in 33 days.</h4>
    <br/><br/><br/>
    <h2>WWDC 2010</h2>
    <img src = "http://david-smith.org/resources/soldout2010.png"/>
    <h4 style="margin-top:-5px">Sold out in 8 days.</h4>
    <br/><br/><br/>
    <h2>WWDC 2011</h2>
    <img src = "http://david-smith.org/resources/soldout2011.png"/>
    <h4 style="margin-top:-5px">Sold out in 12 hours.</h4>
    <br/><br/><br/>
    <h2>WWDC 2012</h2>
    <img src = "http://david-smith.org/resources/soldout2012.png"/>
    <h4 style="margin-top:-5px">Sold out in 100 minutes.</h4>
    <br/><br/><br/>
    <h2>WWDC 2013</h2>
    <img src = "http://david-smith.org/resources/soldout2013.png"/>
    <h4 style="margin-top:-5px">Sold out in 90 seconds.</h4>
    <br/><br/><br/>    
</center>




<center>The iPhoneOS SDK was released March 6, 2008.</center>

  <br/><br/><a href="http://david-smith.org/blog/2013/04/26/a-history-of-selling-out/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        
        <title type="html"> <![CDATA[» An Incredible Incomparable]]></title>
        <link href="http://5by5.tv/incomparable/133"/>
    
    
    <updated>2013-04-03T20:50:00-04:00</updated>
    <id>http://david-smith.org/blog/2013/04/03/incomparable-radio-theater-of-the-air</id>
    <content type="html"><![CDATA[<p>This week&#8217;s episode of <a href="http://5by5.tv/incomparable/">The Incomparable</a> is truly epic.  I won&#8217;t spoil it by trying summarize it.  Just clear the next 47 minutes of your schedule, sit back and enjoy.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/04/03/incomparable-radio-theater-of-the-air/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        
        <title type="html"> <![CDATA[» Human Intervention as a Competitive Advantage]]></title>
        <link href="http://sivers.org/hi"/>
    
    
    <updated>2013-03-23T07:47:00-04:00</updated>
    <id>http://david-smith.org/blog/2013/03/23/human-intervention-as-a-competitive-advantage</id>
    <content type="html"><![CDATA[<blockquote><p>The problem is when business owners see it as a cost, instead of an opportunity. Trying to minimize costs, instead of maximize income, quality, loyalty, happiness, connection, and all those other wonderful things that come from real human attention.</p></blockquote>

<p>Derek Sivers wrote a great article that I think complements my <a href="http://david-smith.org/blog/2013/03/18/human-scale-problems/">Human Scale Problems</a> discussion.  It isn&#8217;t all about scale.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/23/human-intervention-as-a-competitive-advantage/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Purging the Back Catalog]]></title>
        <link href="http://david-smith.org/blog/2013/03/21/purging-the-back-catalog/"/>
    
    
    <updated>2013-03-21T20:05:00-04:00</updated>
    <id>http://david-smith.org/blog/2013/03/21/purging-the-back-catalog</id>
    <content type="html"><![CDATA[<p>Apple recently <a href="https://developer.apple.com/news/index.php?id=3212013b">announced</a> that they will begin requiring all new apps and app updates to support retina displays and include support for the iPhone 5.  I&#8217;m really happy about this move.  It forces developers to update their apps to look good on the modern crop of devices.  This will improve the overall experience of customers in the App Store.</p>

<p>I do, however, wish that Apple would go farther with this and rather than just preventing further updates to old apps actually remove them from sale.  On May 1st, when this policy goes into effect, it will have been <a href="http://www.wolframalpha.com/input/?i=September+21%2C+2012+to+may+1%2C+2013">222</a> days since the iPhone 5 was introduced.  Any app that hasn&#8217;t yet been updated to support its form factor starts to enter into the territory of abandonment.  Indeed after that date they will be in a state of policy enforced abandonment.</p>

<p>There are a few reasons I can think of for why an app wouldn&#8217;t have added support for the iPhone 5.  The most significant of which being that it requires you to drop support for iOS 4.2 and earlier.  I believe that kind of thinking will ultimately hurt the Store and the user experience for most customers.  Supporting older devices at the expense of enhancing the capabilities of newer ones leaves the marketplace in a position that isn&#8217;t driving forward with momentum.</p>

<p>The App Store currently has around <a href="http://148apps.biz/app-store-metrics/?mpage=appcount">800k</a> active apps listed.  I suspect a significant number of these haven&#8217;t been updated in more than 12 months.  An app that is listed for sale but is no longer under active development creates the possibility for bad user experience.  It is like a grocery store that leaves expired produce on its shelves.  The best situation for customers is a marketplace where whichever choice they make results in a great experience.</p>

<p>I say this as someone with a substantial back catalog of apps, many of which I no longer actively develop for.  I pull apps from my portfolio when I feel they no longer provide a reasonable user experience on modern devices.  That said, I have a financial interest in keeping them listed as long as possible which clouds my ability to be objective.</p>

<p><strong>Only Apple</strong> can make policies and decisions for the greater good of the App Store.  Individual developers will and probably should make decisions in their own best interest.  That is how markets work.  So the only way to improve the average quality of apps in the Store is for Apple to act.</p>

<p>I&#8217;ve heard calls for Apple to be more selective in the quality of apps they approve for the Store.  Attempting to define quality by some <em>subjective</em> measure is rife for controversy.  I think it would be incredibly difficult to impose a sane way to judge quality above the basic levels already in place with the App Store Review Guidelines.</p>

<p>Instead, I think Apple would be well served to adopt <em>objective</em> measures for quality or at least freshness to improve the overall quality of the Store.  Adopting such a policy wouldn&#8217;t fundamentally change the situation for developers; every app they submit already has to be approved.  All that this would do is apply some of those same required criteria to the app on an ongoing basis.</p>

<p>As mobile ecosystems mature and the average level of quality across the market is raised it is harder and harder for Apple to differentiate themselves on base user experience alone.  I believe it would be best for Apple (and its developers) if they take strong steps towards encouraging and ensuring that they have the best possible app catalog.  There would be some heartache along the way but the thing that has always impressed me most about Apple is their ability to make tough decisions when the customer experience is on the line.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/21/purging-the-back-catalog/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Human Scale Problems]]></title>
        <link href="http://david-smith.org/blog/2013/03/18/human-scale-problems/"/>
    
    
    <updated>2013-03-18T08:02:00-04:00</updated>
    <id>http://david-smith.org/blog/2013/03/18/human-scale-problems</id>
    <content type="html"><![CDATA[<p>In all the discussion this week about Google Reader I&#8217;ve heard the phrase &#8220;Google Scale Problem&#8221; tossed around many times.  Usually this is in the context of saying how big and difficult RSS aggregation and syncing is, especially when scaling to millions if not billions of users.  I find that kind of perspective to be very counterproductive.  It carries along with it an implied conceit that it is only worthwhile to solve this problem if you can attract that many users.  I believe the opposite.</p>

<p>When I began work on <a href="http://feedwrangler.net">Feed Wrangler</a> a few months ago, I set out with the goal of building a business that was sustainable from its first customer.  The choices you make and the way you approach a problem are very different when your goal is to build something ideal for narrow band of people.  I&#8217;m not trying to make something that fits everyone; instead I want to be opinionated.  I want to solve RSS aggregation in a way that might only work for a small, but meaningful number of people.  Sure, I build it with a structure and architecture that <em>could</em> scale to millions if required, but it doesn&#8217;t <em>need</em> to on Day One.</p>

<p>You can easily build a sustainable business by making a service with a few thousand delighted customers who each pay a monthly subscription fee.   This business starts off in a posture that is very responsive and attentive to each of its customers.  My goal is to delight my first customer, not my millionth.  I&#8217;m solving a <strong>human scale problem</strong>.</p>

<p>When I <a href="http://david-smith.org/blog/2013/03/13/my-secret-project-feed-wrangler/">pre-announced</a> Feed Wrangler earlier this week, I threw up a mailing list sign-up form to collect the contact information for anyone interested in the vision I presented.  In the few days that this has been active I&#8217;ve had more than double my goal for first year subscribers sign up.  While they may not all sign up at launch, it validates my approach.  If that were the upper bound for possible growth of the service it would already be a very worthwhile endeavor.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/18/human-scale-problems/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[My Secret Project: Feed Wrangler]]></title>
        <link href="http://david-smith.org/blog/2013/03/13/my-secret-project-feed-wrangler/"/>
    
    
    <updated>2013-03-13T22:51:00-04:00</updated>
    <id>http://david-smith.org/blog/2013/03/13/my-secret-project-feed-wrangler</id>
    <content type="html"><![CDATA[<p>Today Google <a href="http://googleblog.blogspot.com/2013/03/a-second-spring-of-cleaning.html">announced</a> that they will be closing down Google Reader on July 1.  Google Reader is their RSS aggregation/syncing platform.  While this development doesn&#8217;t come as a real <a href="http://inessential.com/2013/03/13/google_reader_over_and_out">surprise</a> its timing was a bit sooner than I had hoped.  You see, I&#8217;ve been working on an alternative to Google Reader over the past few months.  I had been working away on this hoping to launch around WWDC this June.  Google&#8217;s move has bumped these plans up considerably.</p>

<p>So I am delighted to pre-announce <a href="http://feedwrangler.net">Feed Wrangler</a>.  I typically shy away from pre-announcing the things I&#8217;m working on.  There is usually a benefit to having a bit of drama with the reveal.  However, this is a somewhat unique situation and it seemed wise to let the world know it is coming.  Talking about it publicly also lights a <a href="http://www.moviefanatic.com/quotes/when-he-reached-the-new-world-cortez-burned-his-ships-as-a-resu/">fire</a> under me and motivates me in getting it shipped.</p>

<p>Feed Wrangler isn&#8217;t a simple clone of Google Reader.  Instead it is an alternative take on aggregating RSS that I think makes it much easier to manage.  I&#8217;ll be unveiling the details of this philosophy as makes sense.  While I feverishly work to speed up my schedule I have created a <a href="http://feedwrangler.net">sign-up page</a> for getting news about the product and its progress.   Please sign-up there if you are interested in knowing when it is ready for public consumption.</p>

<p>Feed Wrangler will be a paid, subscription based service.  I believe the reason that Google turned its back on Reader and left its users hanging is that they were <em>users</em> not <em>customers</em>.  I&#8217;m not interested in building a platform designed to attract as many users as possible and then work out how to sustain it later.  I want to instead build something that is sustainable from Day 1.  I want my customers to feel confident that they can expect this to be around long into the future.  I want to build a relationship with them and make something they really, really love.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/13/my-secret-project-feed-wrangler/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Linkbait]]></title>
        <link href="http://david-smith.org/blog/2013/03/12/linkbait/"/>
    
    
    <updated>2013-03-12T15:06:00-04:00</updated>
    <id>http://david-smith.org/blog/2013/03/12/linkbait</id>
    <content type="html"><![CDATA[<p>There are <a href="http://www.youtube.com/watch?feature=player_embedded&amp;v=vLW_OCLzjCY">two</a> ways to garner traffic online.  You can write interesting, insightful, articulate articles over a long period or you can ride the coattails of those who already have.</p>

<p>As someone <a href="http://david-smith.org/blog/2013/03/04/doubling-down/">trying to find</a> my own voice online I get annoyed when I see the later.  The irrationality of this annoyance is the power of a link-baiter.  Making your point by saying misleading things about someone more famous is an easy way to get traffic.  You capitalize on the audience of that person storming over to your site to see what you said.  Plus, you put the offended party in an awkward position if they want to provide any refutation of your claims.  If they link back to you when providing their defense they only further enhance your traffic.</p>

<p>This is the lowest form of &#8220;journalism&#8221; imaginable.  If you ever see me partaking in this you have my permission to slap some sense into me.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/12/linkbait/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Focusing on the wrong things]]></title>
        <link href="http://david-smith.org/blog/2013/03/09/focusing-on-the-wrong-thing/"/>
    
    
    <updated>2013-03-09T13:09:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/03/09/focusing-on-the-wrong-thing</id>
    <content type="html"><![CDATA[<p>I just went through and removed all the analytics I had on this site and my <a href="http://developingperspective.com">podcast</a>.  There isn&#8217;t anything intrinsically wrong with collecting that kind of data.  It can be useful and potentially essential if you sell advertising on your site.  For me, however, I found that it was causing two serious problems:</p>

<ol>
<li>I had begun to define the success, quality and usefulness of an article by the view count it received.  The danger there is that suddenly I&#8217;m not writing what I think is the best article or covering the topic I find most interesting.  I&#8217;m writing whatever I think will get the most traffic.  I don&#8217;t want to be that kind of writer.  I&#8217;d rather speak into any empty room about something I&#8217;m passionate about than to a stadium of people about something irrelevant.</li>
<li>I found that I spent a unhealthy amount of time dissecting the data.  If you have spent any amount of time here you know how much I like data.  I wouldn&#8217;t be surprised if I have spent more time looking at my analytics than actually writing.</li>
</ol>


<p>Neither of these are good for me and my craft.   So, since I don&#8217;t have enough self control to just not look, I&#8217;ve pulled all those collectors offline.</p>

<p>The broader point is how important it is to be introspective about how we are using all the tools and services we interact with.  The insane variety of inputs that are vying for our attention aren&#8217;t all worthwhile.  If I&#8217;m not careful I&#8217;m easily swept up into things that are wasting my time and not helping me improve.  It is a constant fight to curate my attention to only those things that are actually worthwhile.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/09/focusing-on-the-wrong-thing/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        
        <title type="html"> <![CDATA[» No-Host Bar Dot Net]]></title>
        <link href="http://www.muleradio.net/newdisruptors/13/"/>
    
    
    <updated>2013-03-08T19:30:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/03/08/no-host-bar-dot-net</id>
    <content type="html"><![CDATA[<p>While the whole episode is interesting (if you are interested in <a href="http://app.net">App.Net</a>), the first 25 minutes is an incredibly concise and insightful summary of the problems and conditions of the VC oriented tech scene.  Definitely worth a listen.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/08/no-host-bar-dot-net/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Perfect Things #1: Fleece 5.0]]></title>
        <link href="http://david-smith.org/blog/2013/03/07/perfect-things-number-1-fleece-5-dot-0/"/>
    
    
    <updated>2013-03-07T16:10:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/03/07/perfect-things-number-1-fleece-5-dot-0</id>
    <content type="html"><![CDATA[<p>I am going to start a periodic series discussing my favorite things.  These are the things I use consistently in my daily life that I find to be perfect.</p>

<p>Perfection is a hard standard to measure so I&#8217;m also introducing a new unit of measurement called the <em>hC</em>.  An <em>hC</em> is equal to the critique duration of an unladen <a href="http://hypercritical.co/">siracusa</a>, measured in minutes.  All of the products I talk about in this series will have an estimated <em>hC</em> no greater than 25, so perfect for all practical purposes. ;)</p>

<h1>#1: Scottevest Fleece 5.0</h1>

<p>Back in January of 2011 I got a <a href="http://www.scottevest.com/v3_store/Fleece_Jacket.shtml">Scottevest Fleece 5.0</a>.  At the time I was looking for a new everyday jacket to replace my current fleece.  I stumbled across the Scottevest site accidentally.  I was intrigued by their focus on insane pocket counts and technology.  I figured I&#8217;d give it a try and see if I liked it.  This has become my most beloved article of clothing (behind perhaps my grey &#8216;superhero&#8217; DF t-shirt).</p>

<p>The practicality of the jacket is amazing.  It has something like 24 pockets in varying sizes.  They range in size from a tiny pocket proportioned to carry an SD card all the way up to a pocket that can carry an iPad or even an 11″ MacBook Air.  It isn&#8217;t so much that I find that I need to use all the pockets in the jacket but instead that I delight in never running out of space.  This is especially amazing for travel (especially to conferences).  I can carry with me everything I need for the day without needing a backpack and don&#8217;t look like I am carrying anything extra.  The balance and weight management is amazing, even when loaded up with an iPad and books.</p>

<p>The material is great too.  I tend to get warm easily so I can&#8217;t wear something that is too thick.  I find its mid-weight fleece to be an ideal all-season material.  I&#8217;ve worn it comfortably both in freezing temperatures and on spring days when it hovered in the 60s.  The sleeves also zip off if you need extra versatility.</p>

<p>The only downside I&#8217;ve found with this jacket is that it is sometimes easy to lose things in the pockets.  You have to develop a sense of routine, to consistently put things in the same pockets, otherwise you&#8217;ll spend forever looking silly as you try dozens of pockets to find what you are looking for.</p>

<p>For 2 years I&#8217;ve worn this nearly every day from early Autumn through late Spring, plus my trip to chilly San Francisco each summer.  It still holds up well without any real signs of wear.</p>

<p>Perfect.</p>

<hr />

<br/><br/>


<p>There is an updated, fancier model, the <a href="http://www.scottevest.com/v3_store/Fleece_7.shtml">Fleece 7.0</a>.  This is a very similar product that looks very promising.  I&#8217;ve never tried this myself but hope to at some point to see which I prefer.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/07/perfect-things-number-1-fleece-5-dot-0/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Really Hard Work]]></title>
        <link href="http://david-smith.org/blog/2013/03/06/really-hard-work/"/>
    
    
    <updated>2013-03-06T17:18:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/03/06/really-hard-work</id>
    <content type="html"><![CDATA[<p>I often hear that the key to success in life is a lot of <strong>hard work</strong>.  That particular turn-of-phrase bothers me.  There is very little hard in what I do.  The hardest days work I&#8217;ve ever done in my life was digging a drainage ditch under a scorching Kentucky sun while on a mission trip in my teens.  Sitting in a climate controlled office typing on an ergonomic keyboard isn&#8217;t hard.</p>

<p>A better phrase would be to say that the key to success is <em>persistent</em> work.  The difference isn&#8217;t just semantics.  There is a big difference in how you view your goal if you are trying to work hard versus working persistently.  It isn&#8217;t about the amount of energy you expend or the stress you survive.</p>

<p>In my experience the people who succeed are typically the ones that outlasted their peers for long enough to become confronted with opportunities well prepared.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/06/really-hard-work/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Adventures in Home Roasting]]></title>
        <link href="http://david-smith.org/blog/2013/03/05/adventures-in-home-roasting/"/>
    
    
    <updated>2013-03-05T09:42:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/03/05/adventures-in-home-roasting</id>
    <content type="html"><![CDATA[<p><img src="http://david-smith.org/resources/roast.jpg" alt="" /></p>

<p>For some <a href="http://david-smith.org/blog/2012/12/13/aeropressing-snob-blend-star/">time</a> now I&#8217;ve been a bit of a coffee nut.  I started out <a href="http://david-smith.org/blog/2011/05/17/how-i-make-great-tasting-aeropress-coffee-without-needing-a-sink/">Aeropressing</a> grocery store beans, which turned into grinding my own whole beans, which turned into getting fresh roasted beans.  Last night I leveled-up again.</p>

<p>Apart from the obvious caffeine delivery benefits I think coffee is so popular amongst nerds because it allows for infinite fiddling.  As technology has become more and more monolithic we are losing our venues for scratching the fiddling itch most nerds feel.  There are a million different variables to adjust.  You can adjust brewing method, temperature, recipe, origin and roast to your tastes.  It also provides a delightful forum for argument about which is best, an argument which can never be settled because it is entirely subjective.  A nerd&#8217;s dream.</p>

<h3>The process</h3>

<p>The promise of home roasting your own coffee beans is that you can both customize the exact level of roast to your <a href="http://david-smith.org/blog/2013/01/25/finding-your-own-tastes/">preferences</a> and also get the freshest coffee possible.  I wanted to try this out in as low-risk a way as possible.  You can easily spend <a href="http://www.sweetmarias.com/sweetmarias/coffee-roasters/drum-roasters.html">hundreds</a> of dollars on roasting equipment but thankfully there is a great entry level alternative.  You can roast coffee in a hot air popcorn popper.  The concept sounded a bit nuts to me at first but after reading a few articles it seemed worth a try.</p>

<p>I generally followed the instructions posted <a href="http://www.sweetmarias.com/airpop/airpopmethod.php">here</a>.  The process was remarkably simple.  Basically you&#8217;ll need:</p>

<ol>
<li>An Air Popper</li>
<li>Green Beans</li>
<li>A colander</li>
<li>A large bowl with a wet paper towel</li>
<li>A window</li>
</ol>


<p><img src="http://david-smith.org/resources/roastsetup.jpg" alt="" /></p>

<p>Once you have assembled these components the actual roast is remarkably simple.</p>

<ol>
<li>Take around half a cup of green beans and drop them in the hopper.</li>
<li>Turn on the popper and wait 5-6 minutes.</li>
<li>When the beans are roasted to your satisfaction turn it off and cool them in the colander.</li>
</ol>


<p><img src="http://david-smith.org/resources/roastme.jpg" alt="" /></p>

<p>As you roast the chaff will blow out the front of the popper which is what the bowl with a wet paper towel is for.  I found this collected 90% of the mess without much fuss.</p>

<p>Doing this next to a window is likely a good idea (potentially even with a fan blowing towards the outside).  There isn&#8217;t a huge amount of smoke generated but a reasonably strong smell will result which isn&#8217;t foul but might not make your spouse/roommates happy.</p>

<p>I recommend watching the videos on the <a href="http://www.sweetmarias.com/airpop/airpopmethod.php">Sweet Maria&#8217;s</a> guide all the way through before doing this the first time to get a good sense of what to expect and how to judge the level of roast you want.</p>

<h3>Economics</h3>

<p>Home roasting is certainly not something you should try or attempt for purely economic reasons.  While you can certainly save a bit of money in theory it is more something you should do because you like the fun of it.</p>

<p>For the purposes of getting started I wanted to do my first roast with as low an initial investment as possible.  I had no idea how much I&#8217;d like it.  I was able to do my first roast for an upfront cost of only $33.  I got a super cheap (but generally recommended) popper, the <a href="http://www.amazon.com/gp/product/B0036WS1GY?tag=dsorg-20">West Bend Air Crazy</a>.  I found a supplier on Amazon that sold a 1 pound bag of green beans, <a href="http://www.amazon.com/gp/product/B007UMYD54?tag=dsorg-20">The Bean Company</a>.  All shipped free with Prime to my house.  At those prices I wasn&#8217;t too worried about it all going horribly wrong.</p>

<p>In the long term you can save a bit of money home roasting.  Mostly because green beans last so long and are a bit cheaper than pre-roasted.  For comparison I looked at prices at <a href="http://www.coffeebeandirect.com/">Coffee Bean Direct</a>, which sells the same beans both roasted and unroasted.  Kenyan, my favorite bean origin, retail for around $9.80/lb for <a href="http://www.coffeebeandirect.com/unroasted-kenya-aa.html">Roasted</a> and $8.40/lb for <a href="http://www.coffeebeandirect.com/unroasted-kenya-aa.html">unroasted</a>.  That assumes you get a 5 pound bag of roasted and a 25 pound bag of unroasted.  So you save about a dollar per pound.  At the rate I drink coffee my popper would pay for itself it around 5 months.  Nothing too dramatic.  Again, don&#8217;t do this for the money.</p>

<h3>Final thoughts</h3>

<p>I thoroughly enjoyed the process of trying this out and plan to continue doing it in the future.  I like it mostly because of the fiddly itch it scratches and just the fun of watching the beans change colors.  I&#8217;ll probably be getting a nice big bag of <a href="http://www.sweetmarias.com/coffee.africa.kenya.php">Sweet Maria&#8217;s Kenyan</a> and keep tweaking the process as I go.  And hey, at $33 what do you have to lose?</p>

<p><img src="http://david-smith.org/resources/roastfinal.jpg" alt="" /></p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/05/adventures-in-home-roasting/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Inspiration vs Imitation]]></title>
        <link href="http://david-smith.org/blog/2013/03/04/inspiration-vs-imitation/"/>
    
    
    <updated>2013-03-04T14:16:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/03/04/inspiration-vs-imitation</id>
    <content type="html"><![CDATA[<p>I recently started work on my next new app.  This process always carries with it a sense of unease as I define the functionality and aesthetic of the app.  I try to always be careful about how the things that I create compare to other apps in the store.  I want to avoid wherever possible coming across as a copycat.</p>

<p>This is a tricky line to walk since once seeing a particular UI/UX innovation it is hard to avoid having it cloud your thinking and become the <em>obvious</em> choice for how to approach a particular problem.  That is also the fear I have.  If I didn&#8217;t originate a particular feature then I likely also don&#8217;t know all that went into its creation.  Looking only from the outside I likely don&#8217;t know all the tradeoffs that come along with it.</p>

<p>I have come up with the following 3 guidelines that I try to apply to all my own work.  They fit well with my goals and thoughts about where the line sits between imitation and inspiration.</p>

<h2>#1 Never copy the visual identity of another app</h2>

<p>I consider the visual identity of another application essentially copyrighted by its author.  It is poor form to intentionally try and create something that could easily be confused with another app in the store.  This applies both to things like its icon as well as the typography, colors and visual structure of the app.</p>

<p>This is also just good business since creating an identifiable brand for your app helps establish it and make it recognizable.</p>

<p>Copying the visual identity of another app is also just lazy.  I reject the notion that certain types of apps naturally look alike.  Part of the fun in creating something is coming up with its own unique look.  Even within design families (simple vs rich, flat vs textured, &#8230;) you can easily find ways to differentiate your app, and you should.</p>

<h2>#2 Don&#8217;t copy features from competitors</h2>

<p>Generally speaking it is a good idea to avoid getting into a pattern of copying the innovations and enhancements of your competitors.  You aren&#8217;t in an arms race with them fighting to see who can pack-in the most features.  You should be seeking to find ways to differentiate and define the feel of your own applications.  It is also just a cheap move to copy what your competitors are doing.  Every time it has happened to me I&#8217;ve felt awful, I&#8217;d never want to do that to another developer.</p>

<p>The exceptions I make to this are when I feel like I can dramatically and materially evolve and expand upon the concept in such a way as to make it my own.  There is a natural <a href="http://en.wikipedia.org/wiki/Multiple_discovery">simultaneous invention</a> aspect to working in the same area which can also feed into this.  The goal, however, is to make sure that your implementation is truly unique and distinctive.</p>

<p>I also make an exception for a feature or concept after about a year has past since it was initially introduced.  After that point it has become just part of the culture of the store and seems fair game.</p>

<h2>#3 Give attribution for the ideas you copy from non-competitors</h2>

<p>Some of the best innovations when making an app can come from repurposing an idea from another category into your own.  For example, when I took the automatic dark mode feature from <a href="http://instapaper.com">Instapaper</a> and brought it to <a href="http://checktheweather.co">Check the Weather</a> it greatly enhanced the utility of my weather app.  These apps don&#8217;t compete directly so I felt comfortable with borrowing the concept.  I did, however, first ask for permission from its creator and then give attribution for its origin in the app.  I always want to give credit where credit is due.</p>

<p>I&#8217;m sure some would say that my approach is too heavy-handed and stifles innovation in my apps.  I have found the opposite to be true.  By constraining the ways I can implement something away from simply duplicating the work of others I force myself to get creative and the result is almost always better.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/04/inspiration-vs-imitation/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Doubling Down]]></title>
        <link href="http://david-smith.org/blog/2013/03/04/doubling-down/"/>
    
    
    <updated>2013-03-04T11:59:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/03/04/doubling-down</id>
    <content type="html"><![CDATA[<p>I wrote the first <a href="http://david-smith.org/blog/2011/05/17/how-i-make-great-tasting-aeropress-coffee-without-needing-a-sink/">post</a> on this site on May 17, 2011. Since then its purpose and pace have swayed back and forth.  As I look back on the <a href="http://david-smith.org/blog/archives/">archives</a> I am proud of the body of work that has resulted.  I do, however, feel like it could be better.</p>

<p>It has always operated as a <a href="http://www.apple.com/appletv/">hobby</a>, something I do on the side as I have time and interest.  As a result I think that the overall quality of the work I do here hasn&#8217;t radically improved over time.  A knife only gets sharp when ground against the steel.</p>

<p>I want to be a better writer.  Not because I ever want to do it full time (I love being an <a href="http://david-smith.org/apps">independent software developer</a>), but because I enjoy the process of writing and being able to share my mistakes, lessons and thoughts.  I also like a challenge and feel this is a good time to stretch myself.  I don&#8217;t write to a particular mold.  I&#8217;m not a tech journalist.  I just write about whatever is interesting to me at the time.</p>

<p>So, to steal a phrase from Tim Cook, I&#8217;m doubling down on this site.</p>

<p>In a personally impactful episode of Back to Work (<a href="http://5by5.tv/b2w/23">#23</a>, ~42m) Merlin shared advice he had given many hopeful bloggers over the years.  He suggested that they take a month and start writing articles on a regular basis.  At the end of 30 days of this you&#8217;ll know pretty well if you want to be a writer or if you just like the <em>thought</em> of being a writer.  This is how <a href="http://developingperspective.com">Developing Perspective</a> got started and I&#8217;m very pleased with the result.  There is something clarifying and motivating about committing to a specific output for a definite duration.</p>

<p>I intend to start publishing 5 articles a week for the next 4 weeks.  I like the pressure that saying that publicly puts on me.  Some will likely be terrible, others hopefully will be interesting.  If you want to join me for this ride you can subscribe to the <a href="http://david-smith.org/atom.xml">RSS</a> feed for the site or on <a href="http://twitter.com/davidsmithorg">Twitter</a>/<a href="http://alpha.app.net/davidsmithorg">ADN</a>.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/03/04/doubling-down/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[Reading The Magazine on a Kindle]]></title>
        <link href="http://david-smith.org/blog/2013/02/27/reading-the-magazine-on-a-kindle/"/>
    
    
    <updated>2013-02-27T15:04:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/02/27/reading-the-magazine-on-a-kindle</id>
    <content type="html"><![CDATA[<p><img src="http://david-smith.org/resources/kindlemagazine.png" alt="" /></p>

<p><a href="http://the-magazine.org/">The Magazine</a> recently added web subscriptions and with them the ability to download issues as either ePub or Mobi(Kindle) files.  I&#8217;ve been hoping for this feature for some time.  While the <a href="https://itunes.apple.com/us/app/magazine-for-geeks-like-us./id557744510?mt=8&amp;partnerId=30&amp;siteID=IzE7m699rYo">iOS apps</a> are great I prefer to do long form reading on my <a href="http://www.amazon.com/gp/product/B007OZNZG0/ref=as_li_qf_sp_asin_il_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=B007OZNZG0&amp;linkCode=as2&amp;tag=dsorg-20">Kindle Paperwhite</a>.  I have yet to find anything as relaxing as sitting down with an e-ink screen at the end of day spent looking at a computer monitor.</p>

<p>I previously demonstrated the process for reading <a href="http://david-smith.org/blog/2012/10/11/instapaper-on-the-kindle-paperwhite/">Instapaper on my Kindle</a>.   I figured it would be helpful to demonstrate the process for The Magazine as well.</p>

<h3>Getting the files</h3>

<ol>
<li>Become a subscriber of The Magazine.</li>
<li>Visit <a href="http://the-magazine.org">http://the-magazine.org</a> and click on <em>Log In</em> in the top right corner.</li>
<li>Log into the service using your email address. No password is required, you will just need to click a link in your email to login.</li>
<li>Once you&#8217;ve logged into the site, find the issue you want to read and then choose <em>Download for Kindle</em>.</li>
</ol>


<p><img src="http://david-smith.org/resources/magazinedownload.png" alt="" /></p>

<h3>Setting up the Transfer</h3>

<p>You can transfer the file via USB (copy the file to the <code>Documents</code> directory on your Kindle).  However, I prefer to send it via Amazon&#8217;s <em>Send to Kindle</em> service since then I don&#8217;t need to have my Kindle with me when I perform the transfer.</p>

<ol>
<li>You&#8217;ll need the <em>Send to Kindle for Mac</em> application. (A similar application exists for other platforms but I&#8217;ll use the Mac one for this tutorial).</li>
<li>Go <a href="http://www.amazon.com/gp/sendtokindle/mac">here</a> to download the app.</li>
<li>Install it by opening the installer package (right-click-Open on Mountain Lion if <a href="http://support.apple.com/kb/ht5290">Gatekeeper</a> complains).</li>
<li>Open the <em>Send to Kindle</em> application and login with your Amazon.com credentials.</li>
<li>You should now see an interface that looks like this:</li>
</ol>


<p><img src="http://david-smith.org/resources/sendtokindle.png" alt="" /></p>

<h3>Transferring the Issue to your kindle</h3>

<ol>
<li>As the interface implies, drag the .mobi file from your Downloads folder to the <em>Send to Kindle</em> window.</li>
<li>This will present you with an options dialog asking which of your Kindle&#8217;s you want to send it to.</li>
<li>Make the appropriate selections, hit <em>Send</em> and the issue will appear on your Kindle within a few minutes.</li>
</ol>


<p><img src="http://david-smith.org/resources/sendtokindlesettings.png" alt="" /></p>

<p>Repeat this process whenever a new issue comes out to enjoy The Magazine on your preferred Kindle reader.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/02/27/reading-the-magazine-on-a-kindle/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[App.net's Free Tier]]></title>
        <link href="http://david-smith.org/blog/2013/02/25/adns-free-tier-a-nice-step-forward/"/>
    
    
    <updated>2013-02-25T15:01:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/02/25/adns-free-tier-a-nice-step-forward</id>
    <content type="html"><![CDATA[<p>Today App.Net <a href="http://blog.app.net/2013/02/25/introducing-a-free-tier/">announced</a> that they are introducing a free tier to their previously paid-only service.  This is fantastic news for developers.  In my <a href="http://david-smith.org/blog/2013/02/19/the-realities-of-app-dot-net-app-pricing/">post</a> last week about the financial realities of building an application for App.net the biggest problem developers face is the relatively small size of the customer pool.  Adding in a free tier would seem to dramatically improve this situation.</p>

<p>In the first few hours since the tier was announced it has <a href="http://appnetizens.com/nupd">generated</a> around 10x the normal sign-ups than when it was paid-only.  That represents hundreds of new customers who are now looking for clients to use the service with.  If I were an App.net client developer I would be looking with delight on that opportunity.</p>

<p>It isn&#8217;t all roses.  The move to a <a href="http://en.wikipedia.org/wiki/Freemium">freemium</a> model certainly changes the dynamics of the ecosystem and creates all kinds of questions for the platforms future.  The question now is whether the limits they put on free accounts will be enough to maintain the service&#8217;s revenues.</p>

<p>Since its inception App.net is framed itself as a user supported business.  What if in 6 months when everyone&#8217;s accounts are set to renew they simply downgrade to the free tier?  Or enough people do that the platform isn&#8217;t financially sustainable?  I&#8217;m not sure that situation is likely but is certainly a new possibility that wasn&#8217;t there yesterday.</p>

<p>I&#8217;m <a href="http://alpha.app.net/DavidSmith">@DavidSmith</a> on App.net if you want to find me there.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/02/25/adns-free-tier-a-nice-step-forward/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        
        <title type="html"> <![CDATA[» Prioritising Features]]></title>
        <link href="http://insideintercom.io/prioritising-features-wholl-use-it-how-often/"/>
    
    
    <updated>2013-02-24T16:47:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/02/24/prioritising-features-wholl-use-it-and-how-often</id>
    <content type="html"><![CDATA[<p>The third chart in this article is probably the best summary of the filter through which any product developer needs to strain their ideas.  It is easy to caught up building features for a vocal minority advocating for things that would be used be a relative few.</p>

<p>Being able to say <strong>NO</strong> is essential to making awesome products.</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/02/24/prioritising-features-wholl-use-it-and-how-often/">»</a>]]></content>
  </entry>
  
  <entry>
      
    
    
        <title type="html"><![CDATA[The Indy]]></title>
        <link href="http://david-smith.org/blog/2013/02/22/the-indy/"/>
    
    
    <updated>2013-02-22T20:35:00-05:00</updated>
    <id>http://david-smith.org/blog/2013/02/22/the-indy</id>
    <content type="html"><![CDATA[<p>My wife and I recently &#8216;invented&#8217; a drink.  We call it <strong>The Indy</strong>.</p>

<p>Named not after my profession but instead after the <a href="http://hornblower.wikia.com/wiki/HMS_Indefatigable">HMS Indefatigable</a> featured in the Horatio Hornblower series of novels.  The recipe is quite simple:</p>

<ol>
<li>Add 3-5 large ice cubes to a pint glass.</li>
<li>Fill with sparkling water (you can use still water if you prefer).</li>
<li>Add a generous splash of lime juice.</li>
<li>Add a small scoop of stevia (or your preferred sweetener).</li>
</ol>


<p>A refreshing alternative to typical carbonated beverages that still satisfies my sweet tooth (also helps prevent <a href="http://en.wikipedia.org/wiki/Limey">scurvy on long voyages</a>).</p>
  <br/><br/><a href="http://david-smith.org/blog/2013/02/22/the-indy/">»</a>]]></content>
  </entry>
  
</feed>
