Everyone Is A Programmer

Disruptions and annoyances will force some interesting changes across the entire technology segment.

popularity

There was a time when so many people didn’t know how to program their VCRs that OEMs stopped adding clocks because it was embarrassing to have them constantly blinking “12:00.”

We’ve come a long way since VCRs. And that means all of us. While engineers have always enjoyed tinkering with technology, what’s changed is that everyone tinkers with technology now. Everyone programs phones, regardless of age or gender. And while it’s easier to set up wireless printers and home networks than even several years ago, what’s different is that people are doing it without calling the manufacturers for help. They’re even programming car infotainment systems.

In fact, they’re probably doing way too much programming. Owning electronics these days requires a set-up period. It doesn’t require special knowledge, like debugging SystemVerilog code, but it does take effort—often to the point where much of it is redundant, not to mention annoying and time-consuming. And if you have multiple devices, chances are pretty good you can’t remember the nuances from one to the next.

Where this is heading is much more interesting, though, and potentially even scary. Apple, Google, and most recently Amazon have begun centralizing the data used in smartphones and computers. At some point, this is going to connect with the data in your home network, your utilities—cable, Internet, electricity management system—and even your car. When that happens, data will be entered once and centrally managed in secure facilities with only one way in and out.

For SoC design, this greatly simplifies things, while raising other issues. If personal data and critical data are stored in the same place for every device, designs become much easier to build because the rules are easier to follow. They become platforms for very specific purposes, where the emphasis is on throughput and connectivity and power, but not necessarily performance. Cadence’s Brian Fuller is absolutely correct in pointing out that Amazon’s new phone is a paradigm shift, even if it doesn’t prove successful in the market.

The next step in this evolution will be 2.5D, where those platforms can be swapped in and out for specific audiences cheaply and quickly. And while some pieces of those chips will continue to be made at the most advanced process nodes—notably the CPU—the majority will be made at nodes that fit the application, the user, the price point, and the extremely narrow vertical slices of a market. And someday, it may even be customized for narrow groups, updated with an individual person’s information and preferences, and used to control everything from purchases to bank accounts to where a car goes when it drives itself.

Underlying all of this is the emphasis on the user experience, and while hardware enables it the software defines it. The question going forward is how well these two worlds will actually work together, and this may be the ultimate shift in system engineering. Software will define what the hardware does, but the hardware will determine just how well the software works. This explains why Google, Apple, Amazon, Microsoft, Cisco, and a slew of others are now developing both. And you can probably figure there will be a couple others at some point in the future, notably Samsung and eventually some of the less-obvious fabless semi companies.

The shift has begun. It will move slowly, almost imperceptibly forward, but systems engineering will continue to merge these two worlds as never before, causing interesting disruptions as well as major advancements.