Open Source Software from the Enterprise End User Perspective

When I’m talking with clients in my day job as an industry analyst about open source core products, price always comes up. The question is the same: “If this is open source, why’s it so expensive?” Every time. And it’s not a fair question. If companies are delivering value, they deserve to get paid for that. But the reason the question is asked is the fault of vendors selling products based on open source.

The central value proposition of open source core vendors has been freedom from vendor lock-in. After all, the core elements of the product are open source, developed by a global community. The core product isn’t owned by a single company, but, in almost every meaningful instance, by the Apache Software Foundation. If the worst happens and we go out of business, the code will live on in the ASF. You’re safe. If you don’t like us, it’s open source. You’re protected. I don’t know what happens next but hey open source.

It’s a good story. If we’re all honest with each other, it’s not true. But still a good story. And a great way to get in the door and quickly close a land and expand deal at the end of the initial 12-month contract.

At the end of the 24- or 48-month period, the vendor needs to ramp up revenues and increases prices, sometimes drastically. That’s a triggering event for clients to get me and my colleagues on the phone. They ask their users about the features they actually use and value. Can they do without the features that aren’t part of the open source component? In some cases, yeah. Who else is in the market that supports the open source bits? Are they cheaper? Are they the same strategic vendors I’m already working with?

Other vendors smell blood and ask us if they should offer support for those components for cheap. Their customers talk to them about other in-house vendors too.

What’s this all about? AWS recently announced support for managed Apache Kafka. Based on my somewhat narrow Twitter feed, there was a lot of disillusionment from open source advocates about AWS’ offering. Apache Kafka is open source, largely developed and stewarded by the folks at Confluent. The prevailing view was that AWS was profiting off of the work of open source developers, many employed by Confluent. The argument is that AWS was profiting from Confluent’s effective development subsidy of Apache Kafka without contributing anything back in the form of code or docs.

However, Apache Kafka is under the Apache Software License. The ASL doesn’t require users to contribute back to the project. AWS is fully within its rights to use the code as long as it maintains the ASF copyright. (I’m not a lawyer but that’s my shorthand for the conditions of the ASL.) Granted, AWS being within the scope of the ASL doesn’t improve the optics for the open source software community. (Note: Other companies, like Redis Labs and MongoDB, have explicitly updated their licenses to prevent cloud providers from capitalizing on their open source work. These changes haven’t come without a backlash.)

I need to get back to the differentiation challenge. Once end users believe they only need the open source elements of an open source core product, the only differentiations are price and, for some forward-thinkers, both platform-wide integration capabilities and PaaS-style management. For those end users, execution excellence and price matter more than community spirit and OSS dogma. Those same end users talk to their strategic vendors about those products and in a few months AWS starts offering managed Kafka. (Note: Azure already offered a Kafka-compatible API as part of its Events Bus service but it didn’t generate the same negative response from the OSS community.)

This is about AWS, and other cloud providers, responding to customer demand, which is what I’d expect any company to do. It doesn’t appear that their primary customers, which are enterprises, are demanding they contribute back to the open source projects they manage. When that happens, I expect the cloud vendors to respond vigorously. And the OSS community may not like that much either.

One last thought

Ultimately, open source software isn’t the utopia it is made out to be. Open source has been weaponized as a competitive tool. In the past, vendors have been quite candid with me about their intent to maintain control over OSS projects they “own.” Blocking developers from competing firms from becoming full committers is the most common. Creating a competing project is another approach. Another method is creating a consortium around an project to drum up interest, but 95% of the commits come from one company.

The current debate about open source “strip mining” isn’t about contributions, community involvement or anything else other than revenue. Open source remains an excellent development methodology. It’s still not a business model.


United Polaris Leads Business Class Service in… Pillows?

American Airlines is my preferred US-based airline, especially for Asia-Pacific and Oceania travel. I’m fortunate that my day job as an analyst pays for business-class travel for flights over 8 hours. But one area that American’s business-class service lags, and this is going to sound petty, is amenities. Namely, the pillows are useless. The stuffing is so loose that your head sinks through the pillow and into the seat/bed.

Enter United. I had to fly United from San Francisco to Frankfurt because of a massive price difference between American and United. One unexpected treat was the travel-size gel pillow. The density and cooling elements were excellent for actually getting some sleep. These gel pillows used to be offered only by request in Polaris, but now they’re broadly available across business class.

If you’re looking for a gift idea for yourself or someone else, United sells these excellent pillows at a reasonable price here. A well-reviewed alternative can be found slightly cheaper on Amazon: Z Travel Gel Dough Memory Foam + Z-Gel Pillow Removable Bamboo Velour Cover – 5-Year Warranty

How to Structure Your Task List

I saw a few tweets this week about how people use task lists and I thought I’d share my method. Over the last nine years or so, I’ve finally refined how I structure my daily task list. When I was a software engineering manager, I developed what I later discoved was simplified bullet journaling. This method also works with the Pomodoro Technique, which is working on a task for 25 minutes, then taking 5 minutes off.

Here’s what the task list looks like:


Every “big rock” task starts with a square next to it, with priority tasks getting an exclamation point. These are the things I work on during the 25-minute work window. The transitional tasks are things to do during the 5-minute off window. I try to make the transitional tasks simple, like emptying the dishwasher or folding the laundry in the dryer. (I work from home, so my transitional tasks are likely different from yours.)

The point with the transitional tasks is to do something completely different, away from a screen. This gives me a bit of a mental recharge and frequently helps me break through some blocker on code or a document I’m working on.

It should be obvious, but as I finish the tasks, they’re crossed off. If I can’t finish something, it gets pushed to the next day. Pushed tasks are usually the first thing I try to take care of the next day. One key is to avoid overloading your daily task list. I only put one or two big rock projects for a given day. Keeping it short and manageable helps me feel like my day isn’t getting away from me.



IBM’s TradeLens Highlights Blockchain Ecosystem Challenges

In the early 2000s, there was a lot of hype around B2B portals that would replace expensive EDI (electronic data interchange) infrastructure. I worked on three of them: one in aerospace, another for a specific airline and a third that was meant to be general purpose. The idea was the same: a centralized platform, owned either by a consortium of participants or operated by some third party, would replace EDI with a bunch of XML messages. Sprinkle in some Enterprise Java Beans and let the cash roll in.

Today’s blockchain platforms are telling basically the same story, minus the EJBs. the 2000s-era B2B portals had massive challenges and complexity around technologies, data standards and integration. These are the same technical head winds slowing deployment of blockchain platforms. From a business perspective, those B2B portals also had problems getting other companies to participate. After all, why would I work with a competitor? As recent news for TradeLens (the aspirational IBM/Maersk blockchain product) indicates, ecosystem development remains a core dilemma for blockchain adoption.

Maersk’s competitors don’t want to use a platform that they don’t own, either from a platform or intellectual property perspective. They also don’t want to undertake massive investment over several years for a project that may not work in the end. Lastly, how these platforms will be governed is still an open question.

Ultimately, I believe these grand blockchain platforms meant to unify industries will go the same way as those 2000s-era B2B portals. Some will succeed in extremely limited fashion but most will fail with a whimper. The most common scenario is that large companies, like WalMart or Toyota, will create and operate their own blockchain-based platforms and smaller competitors will create their own centralized consortiums to realize the same benefits. Rather than industry-wide unification, it’s much more likely the status quo will be maintained because the business challenges can’t be resolved.


Hi-Tech Sleep with the Bose Sleepbuds

The Bose Sleepbuds had an interesting development cycle. Instead of creating something entirely in-house, Bose turned to crowdfunding to figure out the interest level of a high-tech audio sleep aid. The experiment was a success and the product quickly sold out on Indiegogo. I recently received a pair as a gift and, after using them for a few nights, have some initial impressions.


The Good

My biggest concern was that the Sleepbuds wouldn’t stay in my ears overnight once I entered a deep sleep. (I tend to start out as a back sleeper, then all bets are off.) I found the Sleepbuds rolled up in a sheet the first morning, but after that they’ve stayed in reliably. They’re comfortable, with soft rubber fittings that come in small, medium and large. Compared to other Bose earbuds I own, the rubber material seems much softer on the Sleepbuds. The cone shape leading into the ear fits snugly and securely. It’s possible to push it too far in which can be irritating after a few minutes. It takes a few uses to figure out the right fit, which isn’t unexpected.

The Sleepbuds aren’t general-purpose earbuds, meaning you can’t listen to just any audio stream. You’re limited to ten sounds available from the iOS or Android app, although Bose claims there are more sounds coming. The sounds are what you’d expect: various white noise and some loops, like campfires and streams. I prefer the white noise options, which I’ll get into later. And because these are linked with an app, you can’t use them standalone. If you’re paranoid about how your data is used, this might be an issue.


Screen Shot 2018-10-18 at 18.10.40 .png

The Sleepbuds do a great job of blocking out sound, but they aren’t noise-canceling. They’re “noise-masking.” If you’re in a loud room or your sleepmate snores loudly, they won’t be enough to give you a quiet night’s sleep, even at maximum volume.

One nice feature I noticed was, once I took the Sleepbuds out of their charging case, they immediately linked with the iPhone app and starting streaming audio. Not needing to navigate to the app and start it was welcome.

The charging case is where the Sleepbuds live when you’re not using them, or when they aren’t lost somewhere in the sheets. I’ve found the case can recharge the Sleepbuds 3-4 times on a single charge before it needs to be plugged in. The five dots indicate the case’s charge level, while the flashing lights by each ‘bud indicate if you’ve successfully placed the ‘buds on their respective magnetic charging base. Overall, Bose did a great job with this part of the design and experience of using the Sleepbuds.

The Bad

Of course, no product is perfect. If you’re a side sleeper, which I sometimes am, no amount of rubber padding will mask the feeling of a plastic marble getting pushed into your ear canal. That’s woken me up a few times since I started using them. Not a show-stopper, but annoying enough to mention.

Then there are the sounds. The white noise sounds, like Circulate and Warm Static, are fine because they’re ignorable. Other sounds, like Rustle and Tranquility, have loops that are too short. If you’re paying attention to them even slightly, it’s easy to pick up where the loop restarts and, if you’re like me, you’ll spend more time listening for the loop than entering sleep.

The Results

The Sleepbuds don’t magically put you to sleep. They will block out a good deal of sound and give you a droning noise to focus on while you attempt to get to sleep. If you’re stressed about the day you’ve had, or the day you’re about to have, you’ll still have to deal with that. At best, the Sleepbuds give you a personal cone of relative silence with small footprint.

At $250, the Bose Sleepbuds are an expensive audio sleep aid, but it’s an aid that works for me. I wouldn’t use them while flying due to the risk of losing one or both in a seat, but  they’re definitely part of my at-home sleep routine now.

Have you tried the Bose Sleepbuds or something similar? Let me know in the comments.

Avoiding Weasel Words in Your Business Writing

My day job as an industry analyst gives me great exposure to all kinds of business writing. Some of it is good. A lot of it isn’t. A common trait of bad business writing is what I call the illusion of action, or giving the appearance that you’re advising or instructing your reader to do something, but the action is either nonexistent or vague. From the content I’ve reviewed, weasel words are a big contributor to weak business writing.

Weasel words are words that avoid taking a position. You likely see them on a daily basis but they don’t catch your eye because you’re used to weak business writing. The weasel words I’m always on the lookout for are:

Assume Believe Consider Expect
Imagine Know Look Monitor
Own Realize Recognize Reflect
Remember Think Understand

Getting away from the business context for a moment, let’s say you’re reading about grilling steaks. When it gets to the part about determining the doneness, the step simple states:
Assess the temperature of your steak for desired doneness. [Bad recommendation]

What does that mean? How do I assess it? By touch? If you’re experienced on the grill, this might make perfect sense to you. But if you’re experienced, it’s unlikely you’re reading the recipe in the first place.

Instead, a weasel-free recommendation might look like:
Use a digital thermometer to check the doneness of your steak. Rare steaks are between 120° and 125°, while medium rare steaks… [Good recommendation]

The good recommendation tells the reader how to do something and, when necessary or available, provides some data supporting or scoping the recommendation.

Let’s Talk About ‘Leverage’

‘Leverage’ is a massively overused word in business writing. I can argue that it’s a weasel word because it is used to avoid taking a position, but it almost always means ‘use.’ You’re better off using the simpler and more direct language. The same is true of ‘utilize.’ Always use the shorter, more direct version to communicate with your audience.

Weasel words are evasive and destroy the value you’re trying to create for your audience. Avoid them by taking a position for your reader. If you find that difficult, you may not know your audience or the topic well enough yet.

A Cognitive Model for Decision-Making with Data Visualizations

Data visualizations increasingly inform our daily decisions. Traffic visualizations inform which route to take to the office, business intelligence dashboards indicate how you’re doing on projects and key performance indicators. And data collected by fitness trackers tell you how close you are (or aren’t) to reaching your weight loss or fitness goals.

Each of these domains (transport, performance, fitness) use different kinds of visualizations and may require different decision processes and frameworks. While there’s been significant research on data visualizations on decision making in isolated domains, there hasn’t been a much research around cross-domain research in an attempt to uncover a common cognitive decision-making framework. That is, until recently.

Earlier this year, team lead by Lace Padilla conducted an analysis of decision-making theories and visualization frameworks and propose an integrated decision-making model

What are Decision-Making Frameworks?

Over the last 30 years, the dominant decision-making theory into how humans make risk-based decisions has been the dual-process theory. In the first process, humans make reflexive, intuitive decisions with little consideration. This is also called Type 1 processing. Type 2 processing is more deliberate and contemplative. The two types of decisions were made famous by Daniel Kahneman in “Thinking, Fast and Slow.” There have also been some proposals that these two types are a gross oversimplication of how the human brain makes decisions and the reality is closer to a spectrum of decision-making, based on required attention and working memory.

Cross-Domain Research Findings

The researchers discovered four findings as part of the review. The first two are impacted by Type 1 processes; the third by Type 2, while the fourth appears to be impacted by both.

Visualizations direct viewers’ bottom-up attention, which can be helpful or detrimental

Things like colors, edges, lines and other foreground information can cause involuntary shifts in attention (bottom-up attention). This may cause viewers of a visualization to focus on things like icons while missing task-relevant information. In one example, reproduced from the original document, some viewers were willing to pay $125 more for tires when viewing the visualizations versus viewing a textual representation.


Bottom-up attention has a significant influence on decision-making, but it’s also a Type 1 task that likely influences the initial decision-making process.

Visual encoding techniques prompt visual-spatial biases

How a visualization is presented can trigger biases. One example is using semi-opaque overlays on a map to indicate user location on a map. Representing the probable location as a blurred area produced different decisions than fixed probability area, depicted below:

Screen Shot 2018-10-06 at 17.32.07

Like the previous finding, these visual-spatial biases are a Type 1 process occurring automatically.

Visualizations that have a better cognitive fit result in faster and more effective decisions

“Cognitive fit” describes the alignment between the task or question and the visualization. In other words, is the visualization formatted in such a way that it facilitates answering the question being asked. The researchers used the example of finding the most significant members of a social media network. When the graph was formatted in a way that didn’t facilitate the task, participants with less working memory capacity performed the task more slowly than those with greater working memory. When using a visualization optimized for the task, there was no difference in task completion times.

Knowledge-driven processes can interact with the effects of the encoding technique

The last finding is that the knowledge that a person possesses can impact how the visualization is used, triggering biases or allowing viewers to use existing expertise. Knowledge might be temporarily stored in working memory or held in long-term memory and used with some effort (both Type 2), or stored in long-term memory and automatically used (Type 1).

The Cross-Domain Model

The model the researchers developed adds working memory to a previously existing model of visualization comprehension. Working memory can influence every step in the decision-making processe, except bottom-up attention.

Screen Shot 2018-10-06 at 17.48.13


As part of their review and the previously depicted cross-domain model, the researchers created several recommendations for data visualization designers:

  • Create visualizations that identify the critical information needed for a task and using visual encoding techniques to direct attention to that information.
  • Use a saliency algorithm to determine the elements in a visualization that will likely attract viewers’ attention.
  • Try to create visualizations that align to a viewer’s mental “schema” and task demands.
  • Ensure cognitive fit by reducing the number of mental transformations required in the decision-making process.

Overall, this is excellent work that should be top of mind for anyone using and presenting data visualizations to decision-makers.