Sunday, September 11, 2016

Why App Development is Going Micro


This post was also published on TechCrunch.

Application development has long been fraught with peril: Projects become bloated, expensive and never ship. Implementation technologies tend to match the bloat, ranging from Service Oriented Architecture (SOA) to Business Process Management (BPM). As Redpoint’s Tomasz Tunguz recently pointed out, growth in Software-as-a-Service is slowing, and a next generation of applications will weave new workflows across existing applications in novel ways

The “micro wave” of services, apps and flows

The “micro” trend in application development is focused on delivering bottoms-up, simple solutions to complex problems. Micro services can easily integrate multiple systems, micro apps can present them as easy-to-consume user interfaces and micro flows allow users to simply complete tasks across systems. This “micro wave” triad of services, apps and flows offers a new way to weave existing systems in novel, organic ways in order to deliver solutions immediately.

Micro services

Interoperability between apps has long been the holy grail of application development. Heavyweight, top-down architectures such as CORBA/IIOP in the 1990s evolved into SOA in the 2000s. Implementing a SOA required enterprise-wide mandates and coordination. Payload standards such as SOAP are heavyweight and fraught with incompatibilities, especially at the authentication layer.

A few companies such as GE have had the discipline to implement a SOA, but for most enterprises, SOA projects have failed to gain widespread adoption. Even after success, the constant divestitures and acquisitions of the corporate world keep SOAs a moving target.

Over the past few years, micro services have become vogue. Micro services are atomic, self-contained services that perform a single operation on a back-end system, such as a retrieving a customer record. The most common interface to a micro service is the well-known and very straightforward JSON/REST/HTTPS paradigm. Authentication is also straightforward and is typically easy-to-use API keys.

The beauty of micro services is that they are incredibly easy to create, deploy and share. New and existing applications can easily call numerous external and internal micro services. Naysayers correctly point out the micro services can too easily propagate like mushrooms, fail to scale and are hard to share and discover. However, these are problems that should be corralled by policy within an enterprise, rather than heavy-handed technology.

Making it easy for apps to organically communicate with each other has spawned a new generation of app creation and delivery that has made it far easier for both enterprises and software vendors to accelerate a new generation of applications.

Micro apps

Since the introduction of iOS and Android app stores in 2008, mobile apps have taken over as many consumers’ primary interface to computing. With the plethora of apps available, it is so difficult to attract consumers to install an app on their device and keep using it. It is therefore very common for vendors to pile a bunch of features into their apps so they can retain existing users with new functionality, as well as attract more users. As a result, native apps are becoming increasingly bloated and hard to navigate.

A new wave of “micro apps” is emerging that are intelligent and context-aware. Platforms supporting micro apps range from interactive Slack and Facebook Messenger bots to Google’s interactive answer boxes, such as weather and flights. These micro apps are typically single purpose and use a combination of straightforward user interfaces and context.

Facebook Messenger’s micro apps are composed of rich bubbles and menus

Micro apps are based on HTML and load dynamically, typically bypassing app stores and loading directly into existing communication tools like Slack and Facebook Messenger. There is definitely pushback to the natural language aspect of “bots.” However, the ability to quickly load interactive micro apps directly into messengers and even search results is quickly gaining traction. Facebook Messenger, in particular, is quickly integrating new features, such as dynamic menus and interactive units, which can do anything, from helping you buy a shirt to ordering a pizza.

Slack’s director of developer relations, Amit Shevat, sums up micro apps very well: “they must do one thing really well.”

Micro flows

Business Process Management (BPM) tools help organizations implement top-down automation of business processes. They are typically very expensive and take a long time to deploy. BPM tools manage long-lived workflows requiring a combination of human interaction and machine-to-machine transfers.

The first foray into micro flows were by companies like IFTTT and Zapier, which move data from one machine to another — for example, moving a Salesforce closed deal to Zendesk. While these services are popular, they have hit an upper bound in traction and revenue. New companies such as Workato are extending machine-to-machine workflows between SaaS systems, but they are very similar in complexity to BPM solutions, with a domain-specific language suited for programmers.

A micro flow in Slack

The new potential for micro flows is in the arena of human-to-machine interaction. Now that messenger platforms like Slack and Skype provide rich, interactive HTML that lets users interact with back-end systems, there is an opportunity to reinvent how users interact with enterprise software.

With micro flows, users can bypass complex and unwieldy legacy systems to perform simple actions, such as approvals. One of the biggest complaints of modern workers, particularly younger workers, is the difficulty interacting with legacy IT systems that have not been upgraded in years. Much like Generation X workers wondering why there were so many typewriters around, millennials are perplexed by the unnecessarily complicated and antiquated systems at most Global 2000 companies.

Even executives and managers can benefit from micro flows for the multitude of approvals that generally require logging into systems they only occasionally use. Many companies have multiple systems for functions such as expenses. Although IT may have a long-term plan to consolidate systems, micro flows allow executives to interact easily with multiple systems through a single interface.

Because micro flows typically require some type of interaction with a user, they can leverage notification features in mobile devices and messengers. Such simple, easy-to-use micro flows make it easy to fully integrate contributors into a more macro workflow.

Onward to a “micro wave” future

The combination of micro services, micro apps and micro flows build on each other to deliver a new paradigm for delivering the next generation of apps. Hopefully we can learn from the lessons of the past and not try to “grow up” the micro revolution.

Monday, April 18, 2016

Facebook Messenger’s ‘Rich Bubbles’ Make Dumb Bots Usable


This post was also published in VentureBeat.

In the week since its launch, Facebook Messenger’s bot platform has seen a litany of complaints, with users arguing that it is tedious and unusable. The reality underlying the feedback is that natural language processing isn’t ready for prime time. The techies at Facebook Messenger clearly recognize this fact and have a few tricks up their sleeve that are very old school and reminiscent of the simplified HTML in Facebook’s app platform from almost a decade ago.

Chatting with bots just doesn’t work

Artificial intelligence experts are indeed pursuing systems that pose as humans and can pass the Turing test, but companies attempting to sell flowers or airline tickets are fast realizing that even specialized bots are incredibly difficult to create. The bot platforms are providing tools like Facebook’s wit.ai and Microsoft’s cognitive services to make creating interactive bots easier, but it is going to take years for these specialized bots to become truly interactive.

Even if that interactivity problem were fixed, it is still incredibly tedious to go back and forth with a bot to do anything even somewhat complicated such as purchasing a plane ticket. Using such as simple interface is reminiscent of calling an airline and having to use their TellMe voice recognition systems to go over every detail of a flight.

Slack, one of the first in the generation of bot platform, relies on “Slash” commands reminiscent of DOS command prompt. Yes, if you learn the syntax, it works, but how many people are going to bother mastering the syntax?

Some evangelists in the bot space are saying that at some point humans will have to take over a conversation in order to complete a transaction, which is quite silly when apps and websites have already made it so that you can perform all of these activities without engaging a human.

Facebook Messenger bots will soon look a lot like Google’s answer cards

Facebook Messenger is bypassing the uncomprehending bot problem by providing “rich bubbles” that provide interactivity directly within the messenger. Most in the industry call the equivalent functionality “cards” – small interactive units where users can make choices, swipe for more information, and click or tap on actions. Google made cards pervasive years ago by putting them directly below search queries such as “san francisco weather” and “flights from sf to la”.

So while the Facebook Messenger bubbles are still quite clunky, their evolutionary path has been well trodden by Google: interpret a textual query and provide an interactive unit in response.

Above: Left, Facebook Messenger’s weather bot, Poncho, in action; right, Google’s response to a weather search.

The chat interface offers iterative interactivity

However due to its chat interface rather than search, Facebook Messenger can provide an iterative experience with interactive cards that can quickly get a user to the answer or service that they want. This iterative experience is actually quite novel and useful.

Facebook Messenger is still a very nascent experience. The conversational interface is unusable and will likely remain so for the foreseeable future. However, the “rich bubbles” are well set up to provide an interactive, iterative way to help users find the information they need.

Facebook will likely expand this functionality to full Micro Apps that can load into the Messenger, with games delivered via React Native and apps delivered in this new HTML subset reminiscent of the FBML language Facebook used in its initial platform. All in all, this is an exciting development with far reaching implications for developers that are getting lost in the Apple iTunes and Google Play app stores.

Sunday, April 03, 2016

How Google’s AI Paved the Way for the Next Generation of Bots


This post was also published in VentureBeat.

Bots are fast becoming all the rage in tech, offering users the ability to use a messaging app to type in simple English requests to services like Uber. The user interface is just like texting a friend, and it’s far simpler to enter a message than to download and use a clunky native app.

As more bots and bot platforms like Slack emerge, it’s interesting to note that Google has spent almost 20 years perfecting how to respond to a text query. Today’s bots have a lot to learn from Google’s lessons in natural language interpretation, artificial intelligence, and user interface.

The quintessential example of a bot is ordering an Uber on Slack, which is relatively straightforward since Slack on mobile knows where you are. However, most current bots quickly devolve into endless back and forth. For example, picking an airline flight via text is about as tedious as using an airline voice response system.

Messaging back and forth with a bot is tedious

Perhaps eventually bots will become smart enough to know exactly what you want when you ask for a flight from SFO to JFK, but we are a long, long way from them knowing whether you are traveling for business or pleasure, if you need a different airport this time versus last time due to meetings, or if you want to fly a particular airline to round out an elite mileage tier.

How Google led the way with less text

Google has long been the master of returning the most relevant research to a textual query. Seven years ago, it began interpreting the intent of queries and returning cards with answers to queries above search results. Over the years, Google’s cards have evolved into highly interactive apps covering everything from weather to music, lyrics, and flights.

Google understands shorthand English like “flights from SF to LA” and returns interactive cards in the search results. An interactive card is a much more efficient user interface than messaging back and forth with a bot. We want to send text, but the last thing we want back is more text.

Google’s interactive card apps

Clicking on the “show flights” button in the card or on the “Flights” tab takes the user to a full-screen, fully interactive micro app capable of directing the user all the way through a flight purchase. Bots will likely soon move to this methodology of using a full-screen micro app for more complex interactions.

To drive the point home that text-only interaction sucks, a few years ago Google killed its SMS search product after its interactive cards and micro apps became fully entrenched in smartphones.

Choosing the right medium for the message

Much like people wait until they are using a computer to write a document rather than attempting to do it on a phone, natural language bots are suited to different tasks in different contexts. When using a voice-only interface, interactions are generally limited to simple questions and answers. When typing into a smartphone, a more complex query can return a more sophisticated interactive card or micro app.

Here’s a brief layout of examples for each interaction option:

The emerging bot platforms need to become micro app platforms

So what does this all mean for messaging platforms such as Slack and Facebook Messenger that are supporting bots? Looking at Google’s path, they will soon need to augment their APIs so that card apps and even micro apps can flourish within their platforms.

Supporting card apps and micro apps will require a new generation of lightweight HTML APIs like Google’s card API. Ironically, Facebook has killed off its FBML (Facebook Markup Language) platform, but perhaps React.js will be able to fill its shoes. Users are tired of bloated native apps, with an overwhelming number of features, and this is a great opportunity for lightweight, HTML-oriented apps to be dynamically loaded in real time.

Google also responds to simple queries before they’re even complete, another feature that messaging platforms will likely soon add.

Google’s search now answers some queries while you’re typing

And with some queries, bots should answer your question before you even submit it, as Google now does in Chrome for some queries like the weather and stock quotes.

Longer term, bots should message you when something of particular interest to you happens. Right now, bots are quite verbose and spit out everything that happens in a source system like Salesforce or Github.

Again, we can learn from Google, whose Google Now proactively sends you push notifications and interactive cards apps based on your context and interests.

Google will likely integrate a similar experience into its messenger Hangouts, and as O’Reilly’s Alistair Croll notes, Google is also integrating intelligent card apps and micro apps into its Inbox email product.

An emerging platform war for developers

After nearly a decade of iOS and Android apps, it’s great to have an opportunity to revisit how to invoke app-like functionality and also to slim down an app based on a query and user context. In the enterprise, users will likely come to expect that all of their enterprise tools are queryable and offer proactive, interactive cards and micro apps.

The value of bots for the enterprise user is only just becoming clear. Enterprise bots will likely be used to augment intelligence in the context of conversations, push relevant information to employees, and optimize workflows.

Google has a big lead in responding to text queries, but Microsoft has already announced a bot API for Skype, and new players like Slack are emerging. All in all, this will be a fun show — we haven’t had a developer platform war in almost a decade!

Saturday, February 13, 2016

Bits are Beating Atoms: The Google, Facebook, Apple and Amazon Shuffle


This post was also published in VentureBeat.

Google, Apple, Facebook, and Amazon have been dubbed the four horsemen of the tech industry. They are the biggest consumer companies and dominate the discussion through new initiatives such as drones and acquisitions such as Oculus.

As our current tech era has evolved, Apple has led the pile with a huge market capitalization, and Facebook was the newcomer with the smallest market cap.

In the past few weeks, however, Apple’s phenomenal iPhone sales have finally slowed and Amazon’s endless losses have finally caught up with it. In the meantime, Facebook has blown past Wall Street expectations and Google is continually growing despite its per click revenue dropping. Google and Facebook are weathering the recent tech doldrums better than their peers.

It all makes sense from a macro perspective: It’s far easier for Google to get you to do another search and Facebook to get you to look at another photo than it is for Apple to sell you another iPhone or Amazon to get you to purchase more merchandise. As the adage goes, with Google and Facebook, you’re the product, and advertisers are paying your way.

The marginal cost of revenue of a software company is far lower than a hardware or commerce company. Amazon is attempting to extract more efficiency by owning its own shipping and aircraft. Apple is continually optimizing its supply chain. However, increasing efficiencies in atoms can never catch up with bits; software is in fact eating the world.

Bill Gurley of Benchmark thinks that perhaps Amazon may have disintermediated Google since many people buy everything they need from Amazon. However, no one is looking for movie show times, restaurant recommendations, plane tickets, and many other services on Amazon. Google still has plenty of dry powder to grow, especially in a macro economic environment where consumers are choosing services over goods.

During the dot com era, the “four horsemen” were business-oriented Sun, Oracle, Netscape, and Cisco that sold the picks and shovels that fueled the dot com gold rush. A dark horse to consider in the current race to the top is business-focused Microsoft, which now has a market capitalization approaching Google and Apple. Microsoft’s shift away from Windows and into device-independent subscription services such as email, Microsoft Office, and Dynamics has been very successful.

It is incredibly difficult to keep moving more atoms at a massive scale. Google and Facebook’s bits are virtually free of earthly bounds, while Apple and Amazon’s atoms are increasingly shackled by reality.

Saturday, January 09, 2016

What Donald Trump’s Hammer Would do to U.S. Tech


This post was also published in VentureBeat.

Over the holidays, I heard Donald Trump giving his stump speech in South Carolina on my car radio. It strikes me that, for all we hear about Trump’s outlandish statements in the press, there’s very little reported about his actual message.

Beneath all of his bluster and meandering, Trump is advocating a cogent economic platform targeting an increasingly disenfranchised middle class.

It is well understood in economic circles that a combination of globalization, technology, and government policy — trends that most members of the Republican and Democratic parties fully support — has stagnated wage growth in the middle class. Trump and Bernie Sanders are the lone presidential candidates questioning this status quo, which is why they’re both drawing so much interest.

Above: Source: Congressional Budget Office, Average Federal Taxes by Income Group, “Average After-Tax Household Income,” June, 2010, http://inequality.org/income-inequality/

Trump’s policy proposals are ironically reminiscent of the Democratic Party’s pre-Clinton labor positions and are profoundly pro-domestic manufacturing and anti-tech.

Here’s a closer look at those proposals.

Renegotiated Free Trade

In his stump speeches and ads, Trump said he will definitely break tech-friendly trade deals. The United States participates in several free trade agreements, such as the North American Free Trade Agreement (NAFTA), the newly signed Trans-Pacific Partnership (TPP), and China’s inclusion in the WTO. These agreements are always a multilateral compromise, and the U.S. generally negotiates to increase the sale of high-margin intellectual property, technology, and services. In exchange, developing countries gain the ability to sell low-margin manufactured goods to the U.S. This is net-net a great trade for the U.S. from a corporate perspective, but it has definitely led to income disparity.

These agreements often come with “retraining funds” for affected U.S. workers such as the Trade Adjustment Assistance Enforcement Act (TAA) that do not seem to have an impact. The often-cited jobs in solar installation and natural gas simply do not offset the massive decline in manufacturing. And not everybody can go through Hack Reactor and become a web developer. There is definitely high demand for elite programmers, but beyond that, programming is one of the most globalized industries in the world.

The tech industry is increasingly pushing convenience for the rich consumer at the expense of the poor supplier. A return of manufacturing jobs is what a wide swath of the middle class wants rather than “sharing economy” gigs like driving for Uber. Whether or not a return of these jobs is possible is beside the point. The idea alone is resonating and offers hope, a powerful theme that the Obama campaign successfully used in 2008.

Restricted Immigration

The press definitely picks up on Trump’s salacious statements about illegal immigrants, such as his assertion that illegal immigrants from Mexico are rapists or that we need to build a wall on the U.S.-Mexico border. However, this is really just rabble rousing considering more Mexicans are now leaving the U.S. than arriving.

Knowledgeable observers such a Fred Wilson think that Trump also wants to severely restrict immigration of skilled labor. U.S. technology companies love to import skilled labor with the H1-B and L1 visa programs, but many external observers have likened H1-Bs to indentured servitude.

The underlying economic theory is that limiting the available labor pool will raise U.S. wages. Though this may increase the price of goods, the ideas do resonate with the disenfranchised middle class.

Emphasis on Security

A large swath of the American middle class is terrified of terrorism, and Trump is increasingly talking up strong action on security. The U.S. has backed off many of its mass surveillance programs since the Snowden revelations in 2013, and the White House recently backed off on forcing U.S. technology companies to add surveillance backdoors to their products. There is no question that Trump will weigh national security interests far above the sanctity of the U.S. tech industry.

A Challenge to the Tech-Friendly Status Quo

Both Democratic and Republican parties have been staunchly in favor of policies that support high-margin industries like the U.S. tech industry, which, together with other policies, has led to vast income disparity. Consider the fact that both of the major parties are in fact minority parties: Registered Democrats compose 30% of the population and registered Republicans are 26% of the population, with a full 43% identifying as independent.

Democrats support raising taxes on the wealthy in order to provide more government benefits to the masses. Republicans advocate fewer taxes and more business-friendly policies with the hope that money will trickle down to the middle class. The tech industry is intent on lowering the cost of production of everything from housing to transportation to medical care that soon enough they will all be effectively free.

Donald Trump seems to be the only voice calling for a rollback of free trade agreements, limits on immigration, and an increase security at all costs – three key themes that are the antithesis of the tech industry but that seem to be resonating with a significant portion of the disenfranchised middle class.

Sunday, November 01, 2015

If 87 Unicorns Fell in the Valley, Would they Make a Sound?


This post was also published in VentureBeat.

A lot of noise has been made about the inflated valuations of Aileen Lee’s unicorns and the amount of money they have raised. There are rumors that uber-unicorn Uber is now raising an additional $1 billion, in order to continue to fuel growth financed by losing a rumored two dollars for every dollar in revenue. On the one hand, that seems irrational; but on the other hand, loss-fueled growth is how companies like Amazon became the behemoths they are today.

In the broader context of Silicon Valley technology companies, the unicorns in aggregate form barely a ripple in the fabric of space-time. According to CBInsights, there are 87 Unicorns in the United States, with a combined valuation of $312 billion. Cross-referenced with Crunchbase, those 87 have raised a cumulative $48 billion, with over half of that amount invested in the top 14 unicorns.

What if all of these unicorns vanished to Candy Mountain tomorrow? What would the ramifications be across the various ecosystems tied to unicorn mania? $48 billion is a lot of money to lose, even for the well-funded and diversified investors that have poured money into unicorn mezzanine rounds. However, consider that Fidelity, TPG, and T. Rowe Price alone manage over $6 trillion in assets, so even if they had invested half of what has been put into the unicorns, it would be less than half a percent of their assets, well within the volatility range of their much more stable asset classes. These asset managers are much more concerned about Chinese power consumption data than they are about unicorns returning to mythology.

The late stage unicorn investors, which traditionally invest in tech IPOs, have put anti-dilution and liquidation preferences into these private rounds, ensuring that they will very likely get their money back out at a minimum. The founders, early stage VCs and executives have sold portions of their stakes for cash in these rounds and in secondaries. VCs can complain about overinflation and Kind bars being handed out, but is it really out of altruism for the startups, or because they are shut out of the early stages by Angelist and micro-VCs and the later stages by hedge funds and public market investors?

If the asset managers aren’t biting their nails and wringing their hands about the future of these unicorns, what about the general technology sector? To put the $48 billion invested into unicorns into the technology sector context, consider that two months ago, during the Chinese market jitters, Google’s market capitalization plummeted $54 billion in a week. Google’s investor exposure is more similar to the dot com, with main street investors in the stock. The world did not end. Rent prices in San Francisco did not plummet. Kind Bar inventories at Whole Foods and Safeway did not explode. In the grand scheme of things, it’s just not that much money.

So who could potentially lose here? If investors, founders, and the general technology business isn’t impacted, who is? The employees of unicorn companies who were enticed to startups with multi-billion dollar valuations. There is a good chance many will get squeezed down as the inevitable “IPO is the new downround” public offerings happen when some unicorns fully tap out private markets. But how many people will that actually impact? Even if all the unicorns are forced to rightsize and lay off staff, they are still startups and likely employ fewer people in aggregate than the 33,000 employees HP just announced it will lay off.

There were 39 unicorns when Aileen Lee wrote her original article in 2013. There are now over 140 unicorns worldwide. Some unicorns have hit escape velocity. Others seem more like they are headed to the endangered species list once fundraising windows close and their business models are exposed. Either way, the large late stage investors who have put multiple bets on the roulette table will come out unscathed, so perhaps the unicorn angst is isolated to the Silicon Valley echo chamber.