The GPU Overshadows the CPU

Ask a teenager about GPUs (Graphics Processing Unit) and you might get a surprisingly informed response.  As I watch my kids, nephews, and their friends build “gaming PCs”, they all seem quite current on the relative performance of AMD vs Nvidia, the merits of GPU memory, power issues, etc.  (And one important side effect:  a fairly healthy family ecosystem of hand-me-down GPUs).

While it’s great to run Battlefield 4 at 60fps on ultra detail across three HD monitors, what’s most interesting is how GPU capabilities are generalizing beyond graphics. This is one of my absolute favorite disruption patterns: “commodization+crossover”, where a technology is commoditized by demand for one application and then applied elsewhere.

GPUs began as very specialized (and expensive) 2D & 3D hardware accelerators. Things began to change in the 1990s, driven by demand for 3D games, first with arcade units and consoles, and then PCs. In 1999, Nvidia coined the term “GPU”, starting a consumer-driven 15yr+ price/performance ramp with no end in sight.

GPUs are also getting much more generalized.  The first, fairly rigid 3D-transform computation pipelines have gradually given way to more general stream processors.  So called graphics “shaders” are now nearly fully programmable:  GPU developers write compute “kernels” in C-like languages (such as Open GL GLSL or DirectX HLSL) that then run on hundreds or thousands of compute units on the GPU.  And more recent technologies, such as Nvidia’s CUDA and the OpenCL platforms, dispense with the graphics-centric worldview entirely,

Because of their parallel architecture, GPUs have continued to scale while single CPU performance has effectively flattened.  For certain “embarrasingly parallel” problems where a repeated operation is applied to large amounts of data, they are hard to beat. For example, $350 gets you ~3.4 trillion floating point ops/second, 42,000x faster than the original Cray supercomputer!  Amazon offers GPU instances, and even Intel has conceded in a way:  on a modern x86 multi-core processor, almost 2/3rds of the die area is GPU.

It’s not surprising to see GPU horsepower applied to more and more non-graphics applications, such as simulating physics, aligning genome sequences, and training deep neural networks.  I think this pattern will continue, with the GPU firmly entrenched in computing systems as a highly scalable vector co-processor.

Why We Need a Neutral Internet, Exhibit A

I received an email from Verizon a few days ago, stating several FOX channels are no longer available because “Verizon refused to accept an agreement that contained rates that are not in our customers’ best interests“.  Presumably, FOX wanted more than Verizon was willing to pay.  (In cable TV, it’s customary for the cable TV operators to pay networks to carry their content.)  Now, those channels are currently playing a looping video with Verizon spokespeople, urging subscribers to call Cox Media.

Contrast this with Verizon’s stance toward Netflix, where they want the opposite arrangement:  Netflix pays to deliver content over Verizon’s network, citingWhen one party’s getting all the benefit and the other’s carrying all the cost, issues will arise” (Other ISPs share this view and Netflix has entered such an agreement with Comcast & Verizon).
This inconsistent situation is precisely and exactly why we need a neutral Internet.
Payments flowing between ISPs and content providers distorts the market, introduces friction, and shifts control to the ISPs.  Ultimately, it hinders innovation: compare the closed, legacy platforms (cable TV, pre-smartphone cell phones) with the enormous economic, quality-of-life, and strategic benefits of the new, open platforms (the Internet, smartphones).  If standing up a new Web site was as hard as signing up cable TV providers for your new cable channel, or getting a carrier to carry your mobile app “on deck” (pre-smartphone), we’d be a fraction as advanced as we are today.
Allowing business models for legacy, closed networks onto the Internet is a fundamental policy mistake.  If we go that way, how long until:
Verizon is sorry to inform you that {Netflix,Amazon,Battlefield,Youtube,etc.} will be unavailable (or available only at a reduced performance) because [content provider] refused to accept content distribution rates in our customer’s best interests.

Teaching Kids Programming

Getting kids interested in programming is a lot harder than it used to be. I was lucky enough to come of age during the PC revolution. My brother and I would carefully enter multiple pages of BASIC code from computer magazines, and then play games for weeks (making our own modifications along the way).

The problem now is the threshold of “interesting & engaging” has risen dramatically: today’s kids are surrounded by games and applications that have had hundreds of person years of development with gorgeous 3D graphics rendered in 1080p on huge color screens. They all carry personal supercomputers, are never off-line, have all the world’s information at their fingertips, and can download any of ~1 million applications (many for free).

Hello world” doesn’t cut it anymore.

How do we get kids engaged with learning software development, without them first having to spend a month writing code?

Minecraft is a fabulous starting point. (I think it will go down in history as one of the most brilliant games ever.) In our household, it’s the virtual neighborhood playground. Quincy will often get on to play with a bunch of friends after school (with TeamSpeak, so they can trash talk while building secret hideouts, chasing monsters, designing complex contraptions, or just pushing each other off cliffs).

But what’s most interesting is Minecraft is fully programmable with “redstone“, a set of digital circuit components. You can build a combination lock for your secret room (that blows up with the wrong combination), a completely automated train system, or even a scientific calculator or 8 bit computer. It’s fun, it’s play, and it’s something to show off to friends.  And, it’s programming.

Taking the Minecraft a step further, there’s the physical world itself. Between Arduino, Raspberry Pi, and an ever-growing set of easy to use components and modules, it’s never been easier to sense and manipulate physical things with software. You want an alarm that goes off when somebody goes in your bedroom? No problem. Now, let’s enhance it so it only goes off when it’s your sister, and also sends a text message with a picture of the offender.  You’re not downloading that from the app store!

Presale Resistance Syndrome (PRS)

I’ve written previously about presales (e.g. Kickstarter or Indigogo) as a tool for hardware startups.  The model enables risky & crazy ideas that would normally never see the light of day. Most will fail, but some will get through and be hugely disruptive. For example, Pebble’s record setting Kickstarter campaign accelerated their business and more fundamentally, defined the entire smart watch category.

In spite of this, I still meet entrepreneurs that resist the idea. Objections vary, but include:

  • Our target demographic does not line up with Kickstarter’s.
  • OUYA had a very successful campaign, but still failed. We don’t want to be associated with that.
  • It’s a lot of marketing work and distraction.
  • We’d rather just raise equity financing [and not have to ship all those orders].
  • We’ve launched products before; we know how to do this.

A presale is the marketing analogy to software testing: it tests product-market fit & demand before risking production investment. Of course, it’s not perfect: just like a “passed” test case is no guarantee a system works, a successful presale does not guarantee market success.  But a failure is extremely telling, and a presale (like software testing) can be a powerful tool to de-risk the journey.

From Felony Technique to iOS Feature

Last year, I shared a letter I sent to US Attorney Carmen Ortiz, AUSA Stephen Heymann, and others that prosecuted Aaron Swartz.  I felt (then and now) the government over-prosecuted this case, consuming significant prosecutorial & investigative resources and taking a negotiation stance way out of line with what Mr. Swartz actually did.

One of the key points in the government’s indictment was Mr. Swartz changing the MAC addresses on his laptop to avoid MIT’s attempts to block access.  (Since MIT’s network is completely open, MAC address tracking and blocking is the only real way to shut someone down, short of finding the physical device.)

And now, Apple has announced that MAC addresses in iOS 8 will be randomized, a user privacy feature to thwart tracking.  In other words, Apple has feature-ized the same technique Mr. Swartz used to avoid being tracked and blocked!  There’s a certain absurdity here I can’t quite express.

To be clear:  I’m not defending what Mr. Swartz did.  But this is one small example why this case has gotten so much attention.  When our prosecutors and law enforcement professionals don’t understand the technology (and don’t bring in experts that do) in complex cases, justice isn’t served.

If You’re Developing Any 3D Printing Tech, Don’t Buy A Stratasys Printer

I’ve written before about the risks of building on various Internet platform APIs (e.g. Facebook, Google, etc.) — many SDK agreements let the platform copy anything they want, while you have no recourse.

I just learned about a similar example in the hardware world. From Stratasys’s licensing agreement:

Customer hereby grants to Stratasys a fully paid-up, royalty-free, worldwide, non-exclusive, irrevocable, transferable right and license in, under, and to any patents and copyrights enforceable in any country, issued to, obtained by, developed by or acquired by Customer that are directed to 3D printing equipment, the use or functionality of 3D printing equipment, and/or compositions used or created during the functioning of 3D printing equipment (including any combination of resins, such as combinations relating to multi-resin mixing, color dithering or geometrical resin-mixture structure of the resin) that is developed using the Products and that incorporates, is derived from and/or improves upon the Intellectual Property and/or trade secrets of Stratasys. Such license shall also extend to Stratasys’ customers, licensors and other authorized users of Stratasys products in connection with their use of Stratasys products.

In simpler terms, if (a) you own a product subject to this license, and (b) invent something related to 3D printing, Stratasys and all of their customers have a right to use your invention without paying you.

(Technically, it says that your invention must incorporate, or be derived from, or improve upon their IP.  Given the breadth of their patents, they will argue anything in 3D printing meets this test.  They also include “trade secrets”, which are, well, secret.)

I’ve seen some audacious licensing agreements, but this one takes the cake!

Tech Cases at the Supreme Court

I thought two recent Supreme Court cases were especially interesting.

In Riley v California, the court ruled police need a warrant to search your cell phone. The court recognized that your phone contains so much information, it deserves Fourth Amendment protection.  Justice Alito made an interesting point though:  if you’re arrested carrying your phone bill and your cell phone, the police can use the call log information on bill.  But if you have just your phone, they need a warrant to get the call log.  But, he conceded he does “not see a workable alternative”.

ABC v Aereo, Inc. is less straightforward.  Aereo is the company that rents out tiny antennas in Manhattan, so users can stream broadcast TV on-line. The court found Aereo infringed the Copyright Act, which says that copyright holders have exclusive rights:

(1) to perform or display it at a place open to the public or at any place where a substantial number of persons outside of a normal circle of a family and its social acquaintances is gathered; or

(2) to transmit or otherwise communicate a performance or display of the work to a place specified by clause (1) or to the public, by means of any device or process, …..

(Emphasis added).  This “transmit clause” (2) was added in 1976 in response to cable TV, when Congress noted:

… the Committee believes that cable systems are commercial enterprises whose basic retransmission operations are based on the carriage of copyrighted program material and that copyright royalties should be paid by cable operators to the creators of such programs.

By using individual antennas, Aereo tried to thread the needle on the semantics of “public” and “perform” and most of the court’s opinion addresses that hair splitting.

This is a pattern we’ll see more and more:  companies using new technology to go right up to the edge of the law (nobody imagined private antennas in 1976) and courts splitting legal hairs to (try and) sort it all out.

Y U No Kickstart?

The presale, best typified by Kickstarter, has become a powerful tool for hardware companies to sample market demand and fund initial manufacturing. It’s not the endless beta-test that software developers have, but it moves in that direction.

Presales are not perfect:  a successful sale is not necessarily evidence of product-market fit.   Witness Ouya, which had one of the most successful campaigns ever, shipped product as promised, but then failed to create a library of compelling games. In this case, users bought into a vision that turned out to be much harder to realize than expected (namely, enabling a vibrant, non-proprietary, micro-console game development ecosystem).
In other cases, a presale may find the hard-core early adopters, but may not represent the broader market.  Kickstarter is littered with small, but successful products that never transitioned to mainstream.
However, a presell failure can be quite telling: if you can’t find (say) a few hundred or thousand buyers out of those bleeding edge adopters, how will you succeed in the main market?
Which leads to a very reasonable investor question:  if your hardware startup has no presale plan, why not?  There may be some good reasons, but that’s become the exception, not the rule.  After all, a presale yields valuable insights, early in the product cycle, for a relatively low amount of work (and work you’re mostly going to have to do anyway).  The process forces a lot of good MVP hygiene:  entrepreneurs have to describe the value clearly, converge the features & design, and understand pricing & margins.
It’s certainly possible that Kickstarter is the strategy fad of the decade, much like India offshore development was 10+ years ago.  But I don’t think so:  the hardware presale is here to stay!

Prototypes As Sales Tools

I’m continually surprised by hardware startups that meet with potential investors, advisors, or partners and don’t bring hardware to show!

If you’re making something physical and it’s transportable, bring it to your meetings.

If you don’t have something to show, consider spending some time on a prototype that you can demonstrate.  A “works-like” or “looks-like” prototype (or both) will go a long way to conveying your vision.

Why Spectrum Auctions are a Bad Idea

Unless you’re still on a flip phone, it’s hard to miss the demand for mobile wireless bandwidth. The FCC is under intense pressure to make more spectrum (frequencies) available for data services, repurposing underused spectrum and obsolete applications (e.g. old UHF TV channels).

As you might imagine, an exclusive FCC license can have significant commercial value.  Given this, the primary method of making wireless bandwidth available (as directed by Congress) is to auction it off.

On the surface, this seems like a reasonable approach.  Companies shouldn’t get a government “free lunch”, and we can certainly use the cash ($60 billion to date).  Companies can’t mine Federal land without paying, and the patent system shows how exclusivity incents commercial investment.  Also, a market-based system sounds appealing.

But if our goal is driving innovation and meeting growing bandwidth needs, it’s time to consider that the policy (as the primary way to allocate bandwidth) is seriously flawed.

Unlike oil drilling, spectrum is not a commodity:  1GB used today doesn’t mean there’s less tomorrow.  And license exclusivity is not like patents:  the wireless bidders are not providing a documented technological advance.  Spectrum is a public right-of-way:  what if your local government auctioned off public roads to the highest bidder?  (To be clear:  I’m not suggesting government wireless infrastructure.)

The real problem is that we’re stuck in the translation trap that often happens when we attempt to treat intangible licenses as physical property.  The failure is becoming more clear:  much auctioned spectrum remains underused.  Winners generally have little obligation to actually do anything, and technology advances make it notoriously difficult to estimate future value and bid accurately.  Licenses are for very long periods, not matched to the rapid pace of innovation.

As a result, licenses become expensive trading cards for large wireless companies, with lawyers and regulators involved with every exchange.  Witness the arguing and posturing that’s between Sprint, Clearwire, and all the other wireless companies.  (TL;DR:  Clearwire’s WiMAX business hasn’t gone so well, Sprint wants to buy them for the spectrum value).   Spectrum ends up stuck in a slow-moving, heavy-friction “market”, without being efficiently deployed.

We need a policy that removes friction, by making more unlicensed (or lightly licensed) spectrum available.  The unlicensed bands are a source of significant innovation, starting with CB Radio, and continuing with cordless phones, the Family Radio Service, Wifi, and Bluetooth.   Where else can you buy a 150mbit radio for under $3?  We all switch our phones over to Wifi if it’s available (often provided by a $50 access point).

Our current spectrum policy is a vestige of the old “walled garden” mobile market, where the wireless carriers had exclusive control of the mobile device.  We need a policy that’s aligned with the app-store world, with more spectrum available to innovators that don’t have lawyers and billions of dollars.