Showing posts with label programmable web. Show all posts
Showing posts with label programmable web. Show all posts

Wednesday, May 27, 2015

2015 Internet Trends Report (Summary)

From Mary Meeker of KCPB

Internet usage growth is slowing

  The growth is slowing with about 40% of the world with full internet access at home.  Nearly 3/4 of us have access from mobile phones, but only about 3 billion of that 5.2 billion number have smartphones. That's just a bit more than the 2.8 billion users who have full internet access.

and the US Dollar leads the web

11 of the 15 biggest internet companies are American.  The other 4 are from China.

but Asia is growing the fastest

Internet Growth
China Users = +7%, USA = +2%, India = +33%, Japan = Flat, Brazil = +4%

China Subs = +21%, USA = +9%, India = +55%, Japan = +5%, Brazil = +28

China is close to surpassing the US in percentage of the global GDP.

and Messaging Platforms are the Killer App.

Government, Healthcare, And Education Are Huge Opportunities

"The Internet has already transformed the consumer and business space, where entrepreneurs can build products that meet their needs or solve pain points. Larger, more regulated spaces that are less accessible or comprehensible to the average entrepreneur have seen less Internet-driven innovation, and are essentially sitting ducks for startups." - Tech Crunch Summary

for Enterprise Entrepreneurs

        "‘Enterprise’ Internet Entrepreneurs Often Pursue Prior Company Pain Points" - Slide 30

The most successful businesses have already moved to the cloud Online Payments Business Intelligence Digital Signatures Customer Service Sales Management Support Center Human Resources Enterprise Planning Recruiting Background Checks Employee Training Enterprise Check-in Me.  That's my company.  You get me working for you :)

and of course have significant financial resources

"KPCB is a venture capital firm that owns significant equity positions in certain of the companies referenced in this presentation, including those at - Slide 180"

Meanwhile, users are creating and curating content

Web users are becoming the trusted news reporters and product reviewers.  Young people today are creating their internet.  People debate and work through serious issues, for example:

Just outside the internet, we're learning that drones are useful for better things than killing people

This quarry hole is mine!
Disaster Relief

A word of caution,  you are responsible for securing your data 

Lost devices, insider breaches, spyware all contribute to security breaches.

Still the workplace moves forward online, and becomes global

Service jobs are replacing goods producing jobs, with cognitive jobs growing the fastest.  More people than ever work remotely with flexible hours.  Consumers expect instant response, so businesses are open 24 hours.  Which reminds me, I've got work to do.  It's 9 AM somewhere!

Monday, February 9, 2015

NFL Fantasy Sports API

The NFL has made an impressive Application Programming Interface (API) available to application developers.

 Fantasty Football Web Services  allows existing or new applications to access live NFL data, potentially in real time.  It also allows users to join existing fantasy leagues, or even create new leagues.  Perhaps the most exciting offerings are still to come. Michael Vizard  of Programmable Web writes:

A big part of that effort revolves around giving fans access to statistics and analytics tools that they can use to figure out which players to draft and keep. In the postseason, even went so far as to create a separate fantasy game event that involved just the teams that made the playoffs.

Access to these statistics and analytic tools is something large organizations like the NFL need to compete with the powerful data analysis capabilities available to smaller companies today. In addition to the  playoff fantasy game mentioned above, there's also a prowbowl api available. So the NFL seems to be running with the API.

First, let's have a closer look at the The Web services available now which are documented here: .  Then we'll explore some hidden gems available now in the API that access some underlying predictive analytics, straight form the NFL!

Available Data

Any current player statistics are available through the well documented API calls. To write to the API you'll need a key which you request by emailing .

Scoring Leaders


The data comes back in XML by default, but you can clean that up with a simple format parameter at the end of your request:

Weekly Stats

Users can further filter requests by position, team, week and season.  The available  stats go back to 2009.

Advanced Stats

Additional statistics such as RedZone Touches are also available

{"QB":[{"id":"2533033","esbid":"GRI283140","gsisPlayerId":"00-0029665","firstName":"Robert","lastName":"Griffin","teamAbbr":"WAS","opponentTeamAbbr":"@HOU","position":"QB","stats":{"FanPtsAgainstOpponentPts":"25.00","FanPtsAgainstOpponentRank":"2","Carries":"9","Touches":"9","Receptions":false,"Targets":false,"ReceptionPercentage":false,"RedzoneTargets":false,"RedzoneTouches":"1","RedzoneG2g":false},"status":"Loss, 6-17"}],"RB":[{"id":"2533457","esbid":"MOR317547","gsisPlayerId":"00-0029141","firstName":"Alfred","lastName":"Morris","teamAbbr":"WAS","opponentTeamAbbr":"@HOU","position":"RB","stats":{"FanPtsAgainstOpponentPts":"25.60","FanPtsAgainstOpponentRank":"4","Carries":"28","Touches":"28","Receptions":false,"Targets":false,"ReceptionPercentage":false,"RedzoneTargets":false,"RedzoneTouches":"4","RedzoneG2g":"2"},"status":"Loss, 6-17"}],"WR":[{"id":"80425","esbid":"HAR829482","gsisPlayerId":"00-0026998","firstName":"Percy","lastName":"Harvin","teamAbbr":"NYJ","opponentTeamAbbr":"OAK","position":"WR","stats":{"FanPtsAgainstOpponentPts":"39.00","FanPtsAgainstOpponentRank":"3","Carries":"5","Touches":"11","Receptions":"6","Targets":"8","ReceptionPercentage":"75","RedzoneTargets":"1","RedzoneTouches":"2","RedzoneG2g":"1"},"status":"Win, 19-14"}],"TE":[{"id":"2530473","esbid":"ADA482150","gsisPlayerId":"00-0028337","firstName":"Kyle","lastName":"Adams","teamAbbr":"","opponentTeamAbbr":"Bye","position":"TE","stats":{"FanPtsAgainstOpponentPts":"","FanPtsAgainstOpponentRank":"","Carries":false,"Touches":"1","Receptions":"1","Targets":"1","ReceptionPercentage":"100","RedzoneTargets":false,"RedzoneTouches":false,"RedzoneG2g":false},"status":""}],"K":[{"id":"2499370","esbid":"AKE551610","gsisPlayerId":"00-0000108","firstName":"David","lastName":"Akers","teamAbbr":"","opponentTeamAbbr":"Bye","position":"K","stats":{"FanPtsAgainstOpponentPts":"","FanPtsAgainstOpponentRank":"","Carries":false,"Touches":false,"Receptions":false,"Targets":false,"ReceptionPercentage":false,"RedzoneTargets":false,"RedzoneTouches":false,"RedzoneG2g":false},"status":""}],"DEF":[{"id":"100029","esbid":false,"gsisPlayerId":false,"firstName":"San Francisco","lastName":"49ers","teamAbbr":"SF","opponentTeamAbbr":"@DAL","position":"DEF","stats":{"FanPtsAgainstOpponentPts":"5.00","FanPtsAgainstOpponentRank":"20","Carries":false,"Touches":false,"Receptions":false,"Targets":false,"ReceptionPercentage":false,"RedzoneTargets":false,"RedzoneTouches":false,"RedzoneG2g":false},"status":"Win, 28-17"}]}

Managing Leagues with API Writes

Add a Player

This call adds a player to your fantasy team.

A valid API key will get a success response:


Create a League

You can even create a new league,

then email out links for people to join:

For the application developer and fantasy sports fan, the fun has just begun.

Analytic Tools

Developers and analysts are used to writing their own analytic tools.  The API provides data designed just for custom analytics.  The Pro Bowl API returns players twitter user ids. Those feeds along with the players/news call can keep users up to date with the latest developments.  Potentially that text data can even be mined and analyzed for predictors of next weeks performance.  Does Gronk play better after appearing on Conan?


Predictive analytics has become so prevalent that the NFL is now providing projections of next weeks fantasy points.


Have a look at the JSON response to this request for 2014 week stats.

Algorithms behind the scenes at the NFL boldly predicted at week 1 that NY Giants backup Quarterback Husain Abdullah would have no points the next week (weekProjectedPts)

{"id":"729","esbid":"ABD660476","gsisPlayerId":"00-0025940","name":"Husain Abdullah","position":"DB","teamAbbr":"KC","stats":{"1":"16","70":"58","71":"13","73":"1","76":"1","81":"10","82":"39","84":"2","85":"5","89":"1"},"seasonPts":82.5,"seasonProjectedPts":0,"weekPts":3,"weekProjectedPts":0}

The NFL algorithms were close. If you change the week number to 2 in the url above, you'll see that Husain did scrape up a point the next week.


Season projected points appears in the /playesrs/stats response as well. It appears to be a placeholder for now.  It doesn't change week to week, and it's 0 for any year prior to 2014.  It will be interesting to watch this attribute in 2015.

Watch for more updates to the NFL Fantasy Sports API during the offseason, and for some interesting applications build around the new API.

Popular Articles