Categories
Business

OpenSource with Business

Lots of posts on the internet are about using OpenSource for business. What OpenSource can do for you.

Being a fan of Libre and OpenSource software, and building a company that makes heavy use of OpenSource and Libre software, you might assume I would always advise you to use existing OpenSource software. I don’t.

Even though I would like all software to be OpenSource, or source-available at a minimum, and I do release some of my software as OpenSource. Convincing people to pay for something Open, can be harder; so I have picked appropriate approaches over my 18 years developing software professionally, and prior to that.

In this post I’ll go over how to responsibly, and sustainably interact with OpenSource & Libre software.

You are not in control

One of the common problems I see and have experienced personally, is that you often lose the perception of control when using OpenSource.

Your colleagues and employees will tolerate some behaviors, and you might be in some degree of control, or have the perception that you are. People on the internet, possibly doing this in their spare time, will not always do the same.

Many have their own vision and are sharing things they have worked, hundreds, if not thousands of hours to deliver. They may have other stakeholders, including paying customers needs, that conflict with non-paying customer needs.

The old saying, you can get more with the carrot than the stick, might also assist when interacting with, or reasoning about these groups. On many occasions, it is easy to forget how much is being done for you. Treat them like a valued client. After all they are handling some of your business.

Licensing

In recent years, a lot of businesses have been upset by OpenSource startups pivoting to new licenses.

Redis Labs are one example of this. Oracle is another.

You need to pay careful attention to licensing as it can affect your obligations, and impact how flexible your work can be.

One of the reasons for license changes are longevity and reciprocity.

Libre licenses are the most permissive, in that you can often sell unmodified Libre software, with the caveat of conveying the same Libre license; but often come with no warranty and a responsibility to contribute bug-fixes, raise bug reports and do a lot of often invisible work.

Some will tell you what license to pick. I think it’s far more important to seek professional advice, or ensure you understand, to contextualize each specific license, to your specific organization.

People do unpaid work

One of the largest problems is that by a large quantity, OpenSource creators, maintainers, developers and documentation writers; community leaders and evangelists do a lot of unpaid work.

What often is not spoken about is how much work their users do.

I’m not looking to perpetuate the myth that closed source is some garden of Eden, but if you have a toxic culture, not much to reciprocate, or the budget to pay to receive white-glove valet service, commercial offerings rather than community may be up your street.

If your business relies on unpaid work, then that is a high-risk of things not working.

Perhaps the above should provide incentive to look towards a continuity strategy, which could be as simple as a donation, or as powerful as recognizing you need these people in your teams.

Some larger organizations hire OpenSource contributors, or release OpenSource or Libre works. It’s not just prestige. These people often have skills that are unavailable outside of large-scale collaboration.

There is not always a commercial offering

Some OpenSource and Libre software is literally gratis. By this I mean it is devoid of payment relying on founders or donations to sustain development. While it is not a requirement, it should be a consideration.

This can lead to resentment, burn-out, practices of work you do not understand, or may run contrary to your own. It can also mean that others can undermine your interests, by providing incentive to move creators towards their own interests.

Sometimes, gratis, falls short of what you may have come to expect from commercial offerings, and you need to create support around that, or keep that in mind.

If more people gave back in terms of hosting, expertise, time, promotion, etc; then some of the burden and relationship could become more reciprocal.

Humans crave reciprocal relationships, and there are many ways to show yours, perhaps if you have the time, offering a commercial option for an OpenSource or Libre software.

The point being, be prepared to learn how to do it, as others may not know how to take their amazing software, and make it a commercially viable success for you.

Going your own way

You may have heard of forking or forks of OpenSource or Libre software.

When you shop in the Open, you can often choose to add features the authors refuse to accept patches for, or do not feel are beneficial for all users.

While there is generally speaking no ability to do this with non-open software, I’ve personally seen many a business make huge mistakes forking software and adding features they really did not need.

Before you fork

Deciding to take something because you can, is not always a strategically sound move.

  • Seriously consider how you will continue to integrate, or supplement upstream changes from the original author.
  • Consider if you have the developer resource to do a good job at both creating and maintaining your feature(s).
  • Consider carefully why the authors may not support a use-case.
  • Explore alternatives such as writing a plugin, or separate services, which bridge what you need with what is.
  • Explore engaging the original authors to make the changes you desire.

I am not of the opinion that you should never fork software. I’ve been involved with forks that have been successful, but also have the experience of when things have not gone so well.

Alternatives to forking

Write your own software

One alternative to forking software that is not discussed enough is writing your own software. I’ve seen many a person try the technical equivalent of transforming a Ford motor vehicle into a flying saucer. Don’t do that.

It’s harder to do than you may imagine, and may give you reasonable pause for thought.

If you do, then consider consultancy around your needs.

  • What makes you different?
  • What do you want to do differently?
  • Why is it important that it is different?
  • How will you sustain this?

Learn to work with what is

Sometimes what is, is fine.

I talk to a lot of software developers who change languages, frameworks or vendors at the slightest discomfort.

If what you do is valuable, then change is not a split second decision.

If what you are doing is not valuable. Why are you doing it?

If you know what you are doing is not valuable, and you know what would be more valuable. Set a path out to change with a consultant; engage training organizations; and repeatedly execute, evaluate and iterate.

Pivot

If a path seems like too much, it might genuinely be.

Sometimes not making a change or turning down some up-front short-term benefit can have long-term strategic value.

Oddly enough our businesses and organizations are as much about what we don’t do as what we do.

I’ve operated numerous businesses since a young age, and sometimes there comes a point at which winning against a vendor willing to sacrifice price for quality, with customers who don’t care, is a sign you’re not in the right place.

It’s not a given that you should give-up when things get hard, but it is a valid and intelligent choice in some cases.

What can you do instead that will drive more customer value? Perhaps the OpenSource version has missed a market position.

The alternative

At this point it is worth taking a breather from OpenSource. Grab a cup of something you enjoy drinking, that won’t get either of us in trouble.

It’s time to consider the alternative world of completely closed software.

The best case

Microsoft Office, is one of the most successful Close source software suites on the planet. It does what it does. A thing largely unchanged for 20 years. Echoing a process that was largely unchanged for 100 years.

Significant updates are years away.

Threats are many, varied and range from ransomware to destructive malware, to nuisances.

And you cannot do a thing about it, except not use the software, or suffer through it.

You can expand on Microsoft Office.

It’s a closed system, but has tooling to allow you to buy-in deeper.

After all, if a municipal government could not replace Microsoft after millions of pounds of investment, how will you work your way out from under all those addons?

They are often written in languages and toolkits that are totally non-portable.

More extreme examples

I’ve been to talk to business owners that paid someone they knew, a meager amount over years to write software.

Their data is in the software. Totally managed by someone else.

You upset that person, and you risk losing your data; your stakeholders data. You can get sued.

This happens to governments at the national, regional and local level all the time.

3 meetings with Oracle at £50k a meeting to discuss them charging you.

An impromptu email from your payment provider who was bought by PayPal about not paying some payees if you don’t force them to scan and submit passports to a private company you’ve never heard of.

The review company you pay thousands per-month to, refuses to display legitimate reviews from your old systems, and enables people you’ve never sold to, to criticize you, on a platform you pay for.

The local government who were told that in keeping with the law, if they cancelled service with a parking meter company, all their data would be wiped, losing them millions.

The American government sued Oracle over it’s software resulted in serious harm of their own citizens in a failed healthcare project.

I’ll stop. Honestly, even thinking about this is upsetting. There are so many ways, Closed Source can harm your business, it’s almost irrational to use it.

If it’s so bad, why…

Originally computers were used and understood by a small number of people. They shared some code, and there were books and magazines printed with literal code people typed out manually.

In some areas this is still absolutely the case. Investment in such a time led to decisions that were trade-offs to bootstrap. It still is a work in progress; we’re not out of the woods yet.

This is why we have new laws to govern our use of the digital frontier, which require careful thought, even from those of us with lots of experience.

I can’t give you a sound-byte answer why, but you often have less choice than you might elsewhere in life. Even fewer choices if you prefer to remain risk-free.

OpenSource

If you stand to benefit or not. OpenSource and Libre software, are the only show in town that reduces risk and gives you options you can change later.

In theory open standards can make even closed systems better. In practice, you’ve no way to patch out vendor misunderstandings or leanings, so you’d still be left with risk that you can’t do a lot about.

I Hope you’ve found some of this informative or helpful, and if you need consultancy or software development services. I Hope you’ll consider Techlete Ltd who have experience with both Open and closed vendors to help you navigate your way towards success.