Friday, December 16, 2016

Software is Due for a Bundling Event

This post was also published on TechCrunch.

We are approaching a new phase of enterprise software, where every niche of Software-as-a-Service has been filled and cloud companies are being consolidated into larger companies. Markets have a tendency to cycle from bundling to unbundling, and software is due for a bundling event. The cloud, open APIs, next-generation messengers and machine learning are combining to turn the end-user interface to enterprise software into a unified experience.

There have been attempts to do this, ranging from portal servers like Portal Software, to “Enterprise 2.0” collaboration software like Jive Software, to communications platforms like Yammer. However, none of these have stuck pervasively because they only solved one slice of the problem, various backends were difficult to integrate, it was hard to work with people outside of the enterprise and there was no machine learning to sift through all the data on users’ behalf.

In just the past couple of weeks, Microsoft, IBM and Facebook have all launched next-generation collaboration interfaces for enterprises. Slack kickstarted the reboot of Yammer and Chatter a couple of years ago, and now the big guns are back and swinging.

The key shift in these new messengers is the ability to integrate third-party software that can “push” messages with machine learning to help end users get only the data that is relevant. All of this is built on the rapid proliferation of micro services that allow easy access to most systems, including legacy systems. Some of the platforms even allow full integration of micro apps — simple, single-purpose apps that allow employees to quickly perform specific tasks.

The most convenient feature is to allow end users to drive micro flows, where they can complete simple actions such as approving a purchase order. As I wrote previously in TechCrunch, the unique combination of micro flows, micro apps and micro services is enabling a new architecture I call the “micro wave” architecture.

We at Sapho have had the privilege of working with most of these nascent platforms; here are our impressions.

Microsoft Teams

Key strength: Bundled with Office 365.

Pros: Microsoft’s recent foray into this market is a very comprehensive, well thought-out product. The third-party integration is best in class, with tabs that can support fully contained micro apps delivered by third-party systems. The bundling of Skype’s voice and video features is seamless and performs flawlessly, and even integrates into a channel’s conversational flow. The product out of the gate scales 5x in active users per channel past Slack. This really is a new Microsoft: The desktop version of Microsoft Teams uses Electron and Chromium and the product is available at launch on Windows, MacOS, iOS, Android and, of course, Windows Phone.

Cons: The interface is a bit busy; it packs a lot into the messenger frame. Microsoft will likely iterate on this and clean up the interface.

IBM Watson Workspace

Key strength: Cognitive grouping of messages with extraction of summaries and action items.

Pros: Watson Workspace offers the cleanest interface of all of the new messengers. The product is well planned and architected — like you would expect from an IBM technology, it can scale like a hockey stick. IBM has been a leader in bringing cognitive technologies to the enterprise; with Watson Workspace, it targeted one of the most painful aspects of messengers, which is not being able to find information easily. Watson Workspace magically organizes past messages into clusters and even extracts summaries and action items. It really has to be seen to be believed. The product is also free for users to start using, a first for IBM.

Cons: The third-party integration is excellent, but the ability to integrate a micro app into the interface is still coming. IBM does not jump to top of mind for buyers looking for next-generation collaboration tools. However, IBM has a noteworthy footprint with traditional buyers, and leveraging the Watson product line brand is smart, as it is really starting to get traction with buyers look for next-generation software.

Workplace by Facebook

Key strength: Familiar user interface with algorithmic surfacing of content.

Pros: The top benefit of Facebook Workplace is that everyone already knows how to use it. The interface is just like the consumer version of Facebook. Facebook’s magic algorithm that will surface content in a familiar feed. Facebook’s Messenger has been on steroids under the stewardship of David Marcus and Stan Chudnovsky. Facebook supports external team members out of the box, which is one of the main use cases for modern collaboration tools.

Cons: Facebook’s algorithm is tuned to show you what you would like, whether it’s puppy videos or a Donald Trump echo chamber. At work, people really need to be exposed to data they don’t necessarily like. Facebook has historically been blasé about privacy, and supporting enterprise single sign-on does not make the content hosted in Facebook any more secure. Facebook just announced they will support third-party integrations but does not seem to have a sense of urgency to roll out an ecosystem.


Key strength: First of the second generation, strong SMB usage.

Pros: Slack offers a clean, fun interface and is free to start using. It was the first to the market with a next-generation messenger client with cool features like autodetecting when code is pasted into a channel, and formatting it nicely. The third-party integration is quite good, but there are no plans to integrate micro apps directly into the messenger. Slack is the up-and-comer with a pure-play bottoms-up sales model, while the competition typically sells top-down to enterprise decision makers.

Cons: Slack has not been able to deliver an enterprise-grade product. Every Slack team runs on a distinct Amazon server running PHP and can’t realistically scale past 150 users. Users have to open a separate window and maintain a separate user name and password for every Slack team they work with, which is especially egregious considering that all Slack teams operate under the domain. C’mon Slack, put the user database in Amazon’s Redis implementation and pass an auth cookie between servers — it’s a one month project! At some point the kumbaya culture has to start delivering; they need to have some frank conversations in the engineering department that will make some millennials sad.


Key strength: Can bundle with G Suite and Hangouts.

Google is the dark horse in this race. Just add persistent chat groups to Hangouts already!

Where it’s all going

Two of the biggest enterprise players, Microsoft and IBM, are gunning for this market now. Microsoft has an edge with Office 365 bundling and IBM has an edge with cognitive computing. Facebook is a new entrant that must overcome enterprise reluctance with its well-known interface and surfacing algorithms. Slack has been sitting on its laurels and now has to catch up with larger companies that are out-executing it. Google entering the market would target primarily the lower end of the SMB market that uses G Suite and would provide further challenges to Slack.

The exciting part of all of these players is that it is very quickly becoming possible to move beyond messaging and reinvent enterprise workflows with a new, modern interface. At large enterprises, in particular, this is sorely needed as workers become overwhelmed with information and stuck on old legacy software. Onward!

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 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,

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.