February 11, 2016

We Need Smart and Personal Streams, Not Just The Latest Updates

Once again, the tech web is aflutter about a proposed change in Twitter’s timeline — as they have finally made a choice to offer more than a simply chronological feed of updates displayed in the order they were posted. While a chronological order of tweets can be considered a hallmark definition of what Twitter is today, and truthfully, one of its most addictive features as each new Tweet rolls in, it’s also a detriment to those who aren’t ready to be constantly hooked to the information IV drip.

My 2010 Summary of a Personalized Web future

Twitter is 10 years old now. That’s fairly mature from a Web services standpoint. Its peers, LinkedIn and Facebook, are 14 and 12 respectively. The next generation? Pinterest is just over six. Instagram nearly six. Snapchat is five. And yet it often seems as people are still waiting for Twitter to make that big leap forward to properly sit at the adults’ table.

Twitter as a Media Network, not a Social Network

Ex Twitter PR and comms guy Sean Garrett, now running his own firm, commented yesterday that Twitter’s been done a disservice by being labeled as a social company instead of as a media network. Taking that summary seriously, it clarifies one of the major needs for a personal and intelligent ranking of content, rather than a raw feed of the latest updates. Media companies don’t just give you the very latest updates in order, with no external curation. Instead, they sort it, rank it and deliver them from the most important to least important — whether their medium is television, radio, print or online.

For the most aggressive media consumers, like myself, the idea of seeing content out of order may seem like pure heresy. We read every email, read every blog post in Feedly, and generally catch up on Twitter to the point where we left off. Scrambling that up seems abhorrent. But we’re not normal. We’re seeing that from the tippy top 1% of the bell curve, and hoping the rest of the world will catch up to us. But not only won’t they, but they don’t need to, and we should stop expecting it.

A successful network has an obligation to give its users the best possible experience and do it instantly. But surfacing the right updates for the right person at the right time is a tricky Venn diagram to figure out, be it based on the users’ topics of interest, their affection for the person posting the content, the recency of that content, and obviously, a mix of all those signals and more. Just sitting back and showing the latest stuff only solves for one of those qualities: recency — completely ignoring what I like, who I trust and so on.

Personalized Content Leads to Happier Users, More Usage

From 2009 to 2011, I worked with my6sense, first as a third party consultant, and later as the company’s VP of Marketing, before I joined Google. Their app surfaced content from your social streams in a personalized way, just for you, based on your own implicit behaviors — what you clicked on, what you chose not to, how long you read something, etc. The more you used the application, the smarter it got, and eventually, we would know your interest patterns so well, that we could take our user model and apply it to any stream on the web.

my6sense for Twitter

In early 2011, we delivered a Chrome extension for Twitter, which took the smarts we’d developed and displayed the results of that effort on the Twitter website — giving you two options: your standard timeline, ordered chronologically, and a smart, personalized timeline, from my6sense.

By no means were we the first company to try and bring sense to a social stream. In fact, in 2008, FriendFeed (RIP) offered users personalized recommendations as a feature to their service, aimed for those who’d been away and wanted to quickly catch up. But one aspect important to both of these examples is that they gave the user a choice. You could quickly switch between a chronological feed, which was the default, and the smart feed, personalized to your interests. You could always go back.

But as we found out, the more the user visited the app, and the more accurately we could determine their preferences (which we called digital intuition), the less likely they were to ever visit the unfiltered, unsorted feed. If you became accustomed to a curated feed tailored just for you, going back to one that wasn’t seemed unacceptable in comparison.

Quantity Isn’t Quality. Popular Isn’t Personal.

So imagine you’re one of the millions of users of Twitter (or Facebook, etc.) who doesn’t check in every day. On the rare occasion you do visit, you’re not seeing a feed of updates from people who matter to you most. You’re instead seeing a feed of updates from people who post the most. And quantity rarely was quality. When your selling action to those most likely to leave your service is to give them something low quality and off topic, that’s a problem. And yet, for many services, that’s the default.

Going even further, what many services provide as an option is a leaderboard of popular or “Top” content. It’s assumed the most engaged content is the “best”, but this alone is far from the truth. If you seek out a stream for intellectual curiosity and news, you won’t get that from viral videos and memes, jokes and celebrity news. But many people go to these services to turn their minds off or to relax, and their goal may be in direct contradiction with yours.

Twitter’s Success Really Isn’t the Topic of Debate

Now that Twitter has gone public and its financial success is being graded quarter by quarter, and Wall Street’s public vote on their valuation is there for the world to see, its success could be easily measured solely by stock price. Amid the hubbub of whether Twitter could sustain a billion person audience, like Facebook, or if it’s exceptionally valuable due to the role it plays in the world’s news dissemination and communication, the reality is that it has to do better both for its current user base and those yet to embrace it. And that requires change and evolution.

Twitter should be personal just for me. So should Facebook. And LinkedIn. And the web at large. And my phone and car and so on. If a dichotomy is set up between something that’s smart and personal against one that isn’t, I know I’m going to give the service a chance to give me a better experience — and if not, I should always be able to go back.

Disclosures: I work at Google, a partner and occasional competitor to Twitter. I’ve been an active Twitter user for eight-plus years. I was previously VP of Marketing at my6sense, which built a personalization engine.

February 09, 2016

Running a Social Fantasy Stock Portfolio With Google Finance

It’s no secret the stock market has been more than a little bit rough this year. After years of growth and optimistic enthusiasm about Internet giants, promising biotech pioneers who aimed to change the world, and starry eyed hope for unprofitable unicorns, 2016 has seen record setting declines through January, with the average company losing double digit percentages in value, and less fortunate market caps slashed by more than half in less time than Noah and his family were said to have spent on an ark.

But amid the daily headlines screaming with bold red letters, the overnight alerts about instability in China, and debate over whether the low price of oil will halt the rise of the electric car, a few friends of mine and I have been running a parallel stock game of sorts which makes the daily punishments of whiplash just a little more acceptable, and maybe even fun.

When the leader is down 13%, you know it’s been a rough year already.

The starting rules sounded simple: Start with a virtual $100,000 (any number works, but $100k sounds big) Pick ten stocks or commodities Invest $10k in each one, either short or long. Hold those picks for a full year. No trading. After a full year, the person with the greatest balance wins.

We all started with 100k, but we’d all beg to get there now.

The rules, especially the counterproductive block on any mid-year trading or selling, seem simple. And the twelve month horizon may have you believe it’s a set it and forget it game — just plug in the tickers and come back to see how you did. But the reality is far different. Six different people with different backgrounds, who claim to know what they’re doing and have more than an average level of experience in the market, each delivered widely differing picks, and now we’re keeping an eye on sixty different securities, watching how they move in the face of some pretty strong headwinds.

One portfolio bet 10 for 10 on small cap biotech stocks, crossing fingers for a binary spike on approvals from the FDA, but has had absolutely no luck, down more than 40 percent on the year already — needing a near double to get back to par. Others of us picked large cap tech leaders like Google, Facebook, Netflix, Apple and Amazon, and have also seen declines around 20%. Solar picks like SolarCity, SunEdison and SunRun? Down 33%. One contrarian portfolio is hoping for turnarounds from Yahoo!, HP, Chipotle and Yelp! and faring no better. Pretty much the only things that have kept above water in 2016 are retail picks like Macy’s and Walmart, old media like Time Warner, and a few opportunistic shorts.

(Disclosures: I work at Google and also own SunRun stock in real life. No other biases are assumed or intended.)

The Contrarian Account is Down Too

That none of us predicted a market correction makes us seem more than a little daft, but even though we’ve managed to take $600,000 and turn it into just over $450,000 in about a month’s time, the daily ups and downs and charts created by the automated spreadsheet have turned what should be a tragedy into a thrilling contest that plays out five days a week.

How Google Finance and Google Sheets Run This Game

Stock portfolios are typically a secure and individual endeavor. They’re not made for other people viewing, and they’re not social. But when my dad wagered I couldn’t invest his money better than the 3.5% annual return he expected from a money market account in 2014, I had to find a way to prove I could. And I happened upon Google Finance’s integration with Google Sheets — plugging in my own ten picks that summer, and eventually delivering 10% or so gains on the year. That experience had me getting deeper into Google Finance calls, dabbling with App Script, and setting up the game we have today.

Step 0: Make your picks.

For this game, I set an arbitrary date of January 1st, 2016, and had all participants enter their selections before market trading on the New Year, so that when the market opened, we were good to go.

Start with 10 tickers and then let Google Finance do all the work in Sheets.

Step 1: Get the prices for your picks.

Google Sheets supports calls to Google Finance that request the stock ticker, and then a number of variables, like “Price”, “High”, “EPS”, “low52” for the yearly lows, etc. (see https://support.google.com/docs/answer/3093281) For example: =GOOGLEFINANCE(“AAPL”, “price”) would return the price for Apple stock. Paste that into the cell and change the ticker for your stock.

Step 2: Determine how many shares each player has per ticker.

We determined $10,000 per ticker, and divided the shares by the opening price on January first. A simple spreadsheet call did the math for us.

Step 3: Show the daily change in each ticker and portfolio.

The call of =GOOGLEFINANCE(“GRPN”, “changepct”)/100 would show how much Groupon stock has gone up or down by percent each day. That percentage change, against the total value of your shares at the end of the previous day, would deliver the Daily Impact from that ticker. Add up all ten, and you have the daily change by portfolio.

Step 4: Create background sheets to run a scoreboard.

Now that all the tickers are constantly getting data from Google Finance, and showing the ups and downs each day and over the long term, you can set up three distinct hidden sheets. These sound complicated, but you only have to do it once.

4.1 ) The Master Data sheet. This sheet tracks every ticker in every portfolio and captures their current value. This is done by making calls to each person’s portfolio and the respective cells, like share count, price and gains.

You only have to put these formulas in once, and they’re not really that complicated.

4.2) The All Time script sheet and Daily Script sheets. These are more fancy, as they take data from the Master Data sheet, and auto sort by the most valuable stock pick, displayed it in descending order. This is done using Google Apps Script, with one of these commands: =SORT(‘Master Data’!A2:L41, 8, FALSE) to get all time data =SORT(‘Master Data’!A2:L41, 9, FALSE) to get daily change data That looks crazy, but what you’re doing is making a call to the Master Data sheet, saying you’re looking at all 40 rows from 2 to 41, and all columns from A to L, then ranking by the 8th column, which is the overall gains column, or the 9th, which is today’s change. These sheets make the game more fun.

4.3) The Leaderboard sheet. This small sheet tracks the current values of each players’ portfolios, and how much they’ve gained — both since the beginning of the game, and today.

Step 5: Get As Creative as You Want

Once you have every player’s portfolio being tracked in near real-time through the day, you can do practically anything you like with the data.

The day’s action on a red day shows 10 stocks up and 50 down.

We set up a front page which highlights the current leaderboard, from top to bottom, and shows which stocks have done the best all time or each day. And for those who love to watch the CNBC ticker, we set up another page called “Today”, which captures the day’s action, including our total gains or losses on the day, and an eyeball look at how many tickers are up or down on the session.

Fun charts bring color and tell the story as the market runs.

We also set up a page dedicated for charts, to capture how we’re doing each month on the game — which requires some manual work on the last day of each month, but is trivial, and compares each player to another, showing how much we each need to improve to move up the ladder to the next slot.

And on each portfolio page, we got creative with the Finance API and made calls to 52 week highs, lows and how far each ticker is doing from the annual peak.

What Could Go Wrong?

With Google Finance doing all the calls in the background, and the tickers never changing, the game doesn’t need a lot of maintenance from the project owner — aside from the monthly data captures, and any new features you come up with. But the stock market is a tricky place, and you have to watch for complications.

What if a company gets bought or goes private?

Our answer has been that if a company gets purchased, we would ‘pay out’ the holder as if they owned real stock. An all cash transaction would pay out at the value of the deal, while a stock transaction would get equivalent stock of the acquirer. If a company goes private, the stock value is frozen at the last day it was traded.

What if a stock splits?

That’s a fairly easy one, actually, if you see it. For example, if Amazon is at $500 a share, and you have 20 shares, and it splits 5:1, you’d give the current holder 100 shares at $100 a share, and adjust the acquisition price to a fifth of the original.

What if a ticker changes?

That’s annoying, but we already encountered that with Broadcom getting acquired by Avago Technologies. The calls to $BRCM no longer worked. I tracked down the acquisition details, swapped out the calls to $BRCM in exchange for $AVGO and made sure the dollars matched.

What about dividends?

Look. This is a game, so no dividends for you. Sorry.

What about index funds and options?

Index funds are great if you’re trying to be safe, but games are about risk. And options are too tricky to set up, so no. Sorry.

I did the hard work of getting started. Here’s your template.

Practically all the Google Finance calls from Google Sheets can be found on this help center page: https://support.google.com/docs/answer/3093281. I leaned on Reddit a bit to find out how to pull in data on Bitcoin, and asked my colleague Steven Bazyl some App Script questions when I was getting started. But now I have a template that runs itself. If you want to paper trade by yourself or with some friends, you can absolutely take our template, and put in your own picks. And just maybe the market will turn around and we can talk about gains instead of losses!

Here you go: https://goo.gl/YdTalj Have fun and good luck!