Thursday, November 8, 2018

6 Reasons for Making the Open Source Argument

"Next time you're in a conversation about open source software, you'll know just what to say."

 From my article published this morning....

If your organization is struggling to take advantage of the open source software (OSS) market, here are some proven ways it can help you achieve truly transformative success particularly if you are implementing DevOps.

1. New opportunities

Commercial software and OSS both provide common capabilities as a commodity to all competitors in a market. However, OSS is distinguished in at least two important ways:
  • Having the source code enables an OSS user to create derivative works resulting in market-differentiating, value-added services.
  • Appropriate governance provides an OSS user the opportunity to create business-focused features that may influence industry patterns of practice.
2. New business models

Use market position to your advantage by deciding which OSS capabilities should be standard and open to anyone and where you would like to compete with proprietary offerings. You can continuously alter the competitive landscape to benefit your customers. Effectively, your OSS product strategy can define and maintain the boundary between the "red and blue ocean" for your industry's core technology.
  • NextGen Connect offers one example of this business model narrowly focused on healthcare data interoperability. Its product offerings range from OSS to proprietary appliance-oriented options, with the latest features appearing first in the proprietary versions. The line between OSS and commercial/proprietary is constantly shifting with market demands and opportunities.
  • The commercial-to-OS software continuum also supports trends that focus on the monetization of data and services rather than software license revenue.
3. Self-determination

Commercial vendors strive to offer products and services that are attractive to the widest market and deepest pockets. This often results in overly complicated and resource-intensive software bloated with unused features. Products developed to offer specific capabilities can morph into "platforms" trying to serve every need. Vendor lock-in through customization, vertical integration, and proprietary operational processes creates a barrier to change that can be cost-prohibitive and restrict the ability to quickly pivot to new market opportunities.

In contrast, OSS components and solution stacks allow a much finer degree of control and ability to abstract underlying technologies from business processes. Your roadmaps become your own, independent of a vendor's feature and release schedules.

4. Responsiveness

Two critical areas where timely reaction and intervention can avert problems are security issues and bug fixes. Commercial vendors strive to be responsive when addressing such issues but, by definition, they are serving multiple customers with varying needs, sensitivity levels, and sophistication, which can impede their time to deploy a solution.

OSS communities tend to coalesce around deploying the simplest solution in the shortest amount of time. Having access to components' source code allows direct, rapid intervention if needed. The response to the Heartbleed vulnerability incident of 2013 is a good example. Open source based applications consuming affected components could be patched quickly because there was no need to wait on an official vendor supported patch. Users could independently weigh risk and patch as they determined best.

5. Time to market

OSS culture emphasizes self-reliance and naturally leads to DevOps processes and associated organizational alignment. DevOps can be fostered with public cloud infrastructure where appropriate. Open frameworks comprised of OSS stacks and public infrastructure increase your overall velocity and ability to realize value sooner. DevOps and OSS complement each other by emphasizing the importance of just getting started to begin seeing results.

6. Cost-efficiency

There are solid opportunities in OSS to drive hard dollars out of solutions and operational transaction costs if you are willing to pursue supporting strategies ruthlessly. Unlike OSS, commercially licensed products often struggle to differentiate by feature or performance. Bottom-line: with commercial products, often you are paying extra for a trademark's reputation, software-as-a-service delivery, or a support contract—rather than demonstrable added functional value over OSS solutions. 

Making the open source argument is worth the effort. Community-based software development has proven its value in some of the most challenging spaces. Marketplace competitive forces suggest that any business turning a blind eye to the open source movement is ceding a significant advantage to competitors. Just as low-cost, shared resources on the internet have dramatically reduced the barrier to entry when it comes to infrastructure, the rapidly evolving breadth and quality of open source components will quickly alter the competitive landscape across many vertical marketplaces.

Monday, May 21, 2018

Tesla & Open Source

Just in case you didn't realize that Open Source Software is truly ubiquitous across industries, here is a story about Tesla releasing software to comply with GPL licensing terms.  According to the story this has been a thorny issue from some of the affected copyright holders, but at least it appears things are moving in the right direction.

Just think, third parties will be able to experiment with Tesla add-ons, as well as discover bugs and security flaws much quicker through a community approach.  I do hope Tesla releases a set of virtual services for testing and publishes a clear contribution path so we don't have hacked cars running down the road.  Some day there may be an annual Tesla software conference!  Imagine the t-shirt that accompanied the status of being an official Tesla Open Source contributor :-)

In the end, Tesla's steps toward compliance are a win across the Open Source spectrum and will encourage community development practices to flourish.

Thursday, March 29, 2018

Oracle v. Google in Android Dispute

Oracle and Google are at it again.  The dispute was sent back to a federal trial court by the U.S. Court of Appeals for a damages determination this week.

At issue is the nature of Google's use of various java API code in the ubiquitous Android operating systems found on so many phones and hand held devices.  Google had earlier prevailed on a "fair use" argument before a federal jury, successfully arguing that the Android implementation of java API code was exempt from copyright law.  Now, the appellate court's opinion all but assures a continuing battle for years to come given the potential for billions in damages at stake.

Regardless of the ultimate outcome on this case, most corporate and academic environments today are flush with java based applications.  Here is how I am able to offer some reassurance to most clients:

  1. Oracle's primary claims revolve around their contention that the Android java implementation was used to create a competing platform by embedding java in a mobile operating system distributed all over the world.
  2. Oracle does not seem to have a problem with the use of the java environment as a base upon which to build business applications which do not duplicate, attempt to replace or alter core java functionality.  In fact, the core licensing documents for java, often referred to as the "Oracle Binary Code License Agreement for Java EE Technologies", specifically anticipates this use case.
Since use cases conforming to #2 are far and away the most prevalent in the business and academic space, I feel confident continuing to recommend java based application development.  However, if a client desires to embed java within a device for further distribution, e.g. a new refrigerator or toaster, I would be more inclined to approach Oracle for an appropriate commercial licensing agreement. 

This Bloomberg Technology article was a good source of reference for this post and is recommended reading. 

The case is Oracle America Inc. v. Google Inc., 17-1118, U.S. Court of Appeals for the Federal Circuit (Washington). The trial court case is Oracle America Inc. v. Google Inc., 10cv3561, U.S. District Court for the Northern District of California (San Francisco).