trending topics view based on read counts I am trying to setup a view where it shows the most popular articles and couldn't find any answer to this. My readers will all be anonymous as it's my company's blog. 

Looking forward an answer as this is pretty useful on blogs!

Cheers!
If your site is relatively low traffic, you could possibly use the statistics module, or as @clive pointed out, the radioactivity module. 

For higher traffic sites, I'd be wary of writing to the db for every visit, however. Moreover, if you're using varnish or some other reverse proxy caching system (which you probably should), Apache and PHP normally aren't invoked for anon visitors, so you'd need to do something different.

I've landed on using google analytics for this. To do it, the site obviously needs a google analytics account, and you need to install the google analytics and google analytics reports modules. Once you've configured them, you can fetch an array of the most visited nodes from the google analytics api. You can then simply serialise it, and save it to the variable table. This uses hook_cron, and needs to be done in a custom module:

function YOUR_MODULE_cron() {
  $last_time = variable_get('YOUR_MODULE_last_time', 0);
  // DO EVERY 24H
  if ((REQUEST_TIME - $last_time) &gt; (60 * 60 * 24)) {
    $data = array();
    $dates = array();
    $params = array(
      'metrics' =&gt; array('ga:uniquePageviews'),
      'dimensions' =&gt; array('ga:pagePath'),
      'segment' =&gt; 'gaid::-11',
      'filters' =&gt; 'ga:pagePath=@/PATH/TO/NODES',
      'sort_metric' =&gt; array('-ga:uniquePageviews'),
      'start_date' =&gt; strtotime('-7 days'),
      'end_date' =&gt; strtotime('-1 day'),
    );
    $feed = google_analytics_api_report_data($params);
    if (!$feed-&gt;error) {
      $k = 0;
      $nids = array();
      foreach ($feed-&gt;results as $f) {
        // SAVE 6 MOST VIEWED
        if ($k &lt; 6) {
          $nids[] = (int) array_pop(explode('/', drupal_lookup_path('source', ltrim($f['pagePath'], '/'))));
          $k++;
        }
      }
      $nids = serialize($nids);
      variable_set('YOUR_MODULE_ga_items', $nids);
      variable_set('YOUR_MODULE_last_time', REQUEST_TIME);
    }
  }
}


Every 24 hours, this would save a serialised array of the most popular nodes that appear under the path http://yoursite.com/PATH/TO/NODES/REST_OF_PATH. To use the nids, you'd simply unserialise the variable after retrieving it:

$nids = unserialize(variable_get('YOUR_MODUE_ga_items', '');
foreach($nids as $nid) {
   $node = node_load($nid);
   ...
}