Don’t Pay an Open Source Ransom

Recently, I have spoken with a number of people about projects whose model is to build something useful and open the code when someone pays them to do so.

It seems to me that this is a terrible model for ‘open source’ and I hope it doesn’t proliferate. The problem being that this sets the wrong incentive for projects. It is in effect encouraging them to hold the code ransom. When the right bidder comes along, the code then gets set free. I think funders and investors should refuse to put money into these projects and instead agree only to fund projects that are open source from the beginning. Otherwise we are incentivizing this ransom model which is bad for open source because:

  1. start open : we don’t want new projects to decide to close the code, when they might otherwise start open, because there might be a chance they can ransom the code at a later date. We want projects to start open.
  2. stay open : let’s face it, if a project is ransoming their code, then their heart and soul (and business processes) are not in open source – it is not fundamental to what they do and how they think. So how do you know they will stay open? We want projects to stay open.
  3. be open : open source is not just a license. It is a way of committing to sharing and collaboration. Projects that start closed and ransom their code are not going to be good faith open source actors. They are likely to hold the code close, not share, and be awkward (at best) collaborators. We want projects to be open.

We are the media, but I want to be free

I met with a friend a few days ago to talk through one of my next projects. This one is directly related to me – how do I raise my presence via the net without using social media. Being a social media consultant she was a little puzzled.

So we talked it through and I was able to refine my position a little. I’m trying to get out of any web and mobile platforms out there that are closed source. I’m tired of being the product for silicon valley business models and I’m also tired of being a neat little secondary product for all the governmental surveillance agencies out there – NZ and the US being two of the worst in the ‘free’ world. Of course, data security is a bigger story than just having accounts on sites like LinkedIn and I am going to take more care of this side of things also. I feel a little sheepish about this as I know how to keep myself secure-ish but I have fallen into some lazy patterns. Too trusting and complacent it seems.

I’ve done a lot of the personal data lockdown already. It doesn’t take a lot to tighten things up. I moved to a VPN provider (after a brief research to find one outside the US that doesn’t log any data), got a password manager and replaced all my frivolous passwords with stronger ones, and will do a few other things to lock things down a little.

But the main issue is that I want to be back in a web I can respect. It is kind of an ethical issue for me, similar to what fuels my vegetarianism. I do actually see it very much like I am becoming a web vegetarian. I want to get out of all these platforms and put myself onto another dietary path and make it work for me.

First up, I have some apparently easy targets but, interestingly, like all ethical journeys, every small step brings about small paradoxes that I am motivated to resolve – ethical harmony being a given as a navigational device.

For example… Medium… yes, yes, such an interesting… err… Medium. So very tempting. it offers the classic ‘go where the people are’ quandary. So I thought about this a little… where is my ethical line? What if I just wrote blogs at my home site (I am also warming more and more to the crusty old idea of ‘home site’, more on this later) and then cross-posted to Medium…wouldn’t that be ok? Would that be ok? What if I put a big banner on my replica Medium posts that pointed back to my home site? What if I just put an excerpt in Medium and pointed back to the full article so people had to come ‘here’ to read it? Well… hmmmm….

I let it sit for a bit and then I wondered what others thought about this. So I duckduckgo‘ed around a little in my newly installed Chromium browser, to look for the obviously well-discussed topic of how to maintain an ethically viable presence on Medium if you cared about privacy and open source and ran your own WordPress site. Surprisingly I couldn’t find anyone offering a way forward. But what I did find was a whole lot of banter about Medium vs WordPress as platforms. ‘Which one should you use?’ sort of thing… and this was very helpful. It made me realise that there is a turf war going on out there between one of the most successful open source platforms -Wordpress – and one of the most successful recent closed source blogging platforms – Medium. I just hadn’t been thinking about this space for a long time so it never occurred to me that this was going on. Of course it is makes total sense (I have almost perfect hindsight at times).

In fact, if you visit the Medium for Publishers page, it is spelled out quite clearly in their “not saying its Wordpress but it’s Wordpress” speak.  The comparisons of Medium vs some ‘other’ are clearly targeted at WordPress. That in itself is fine, I don’t take offence to how people want to do business with things like this. However, it did wake me up to the fact that every moment of your attention, every post, every comment that Medium has is one less moment, one less post, one less comment that WordPress doesn’t have. And that’s not ok by me. Using Medium means, to whatever degree you use it, not using WordPress; and that means that the direction of the flow is going the wrong way, it is going away from open source and towards closed source systems.

So that actually, and surprisingly, solved it for me. I’m getting out of Medium. Not that I actually used it. I had one post that I deleted already and I have a few comments on one of Nadia Eghbals‘ posts about open source and I’ll leave those up for now as I ponder where I am with legacy contributions I have made in closed systems. Step, think, step.

Next, I must think through LinkedIn. I initially thought that would be simple. Just kill my account. However, what about identity ‘theft’? Where am I with regard to malicious persons out there that may wish to contaminate the web with ‘therealAdamHyde’ rahrah. It is a good question and one I am going to have to think through. Needless to say, it is a very strange place we have come to with the net when proprietary platforms are contributing to your identity online even if you aren’t in them. That is a pretty quizzical paradox. How, how, how, did we let this happen? Sigh.

So, LinkedIn. I will at first delete all the profile information and then think on it a little. It is a very ponderous question.

One good thing, as a final point in this first part of this evolving story, is that making an effort to get out of these closed social media platforms has made me realise that I’m just removing a crutch. I am not totally sure they did much for me anyway. So it kind of forces me to think about the effort I am putting into other, possibly more effective, vehicles and upping that part of my profile-raising mission. Which is why I have started a newsletter which you can join over there on the right ————> (oops…unless you are ready this on mobile), why I am feeling more ‘at home’ with my home site, and why you are possibly reading this…

More about all this soon…

Simplified, Narrative, and Transient Attribution

I’ve been thinking through attribution models for many years. Mainly for books, but it is also interesting to consider how credit is attributed in open source projects. For both open source and books, I believe narrative attribution is a great model which escapes many of the problems of simplified attribution, but there are some interesting gotchas… so, let’s take a look at it….

A copyright holder is different to those people we attribute credit to for producing a work. Michael Jackson, for example, held the copyright for the Beatles songs for a long time, however we attribute the credit for those songs to Ringo, George, Paul and John.

I like to think of this ‘naming’ of contributors to be a type of simplified attribution. It is a handy tool to be able to hang credit on a couple of names. Nice and clean, not complicated, and easy to remember. It is also the way copyright works. Copyright requires some names to be cited as the copyright holder and many times we, out of habit, co-relate the named copyright holders with the credit for producing the work. It’s just how our brains work.

However, there are a couple of things we need to tease out here. First, named credit is not synonymous with the named copyright holder and we should be a little more careful with this and avoid conflating the two. Michael Jackson, for example, clearly did not write the Beatles songs, so we should be careful to avoid conflating credit and copyright.

Secondly, simplifed attribution doesn’t actually tell us much. It is not rich information. It’s a couple of names and we tend to attribute far too much credit to those names. We have a romantic notion of creation and we tend to want to think there is a ‘solitary genius’ behind things. If not a solitary genius, then a couple of identifiable people that we can attribute genius to collectively. But this is really fantasy. Great things come from many people, not one. One person by themselves isn’t capable of much. How individuals work together is the real story and these stories are far more complicated than the vehicle of simplified attribution can convey.

Those who know the story of the Beatles, for example, know there is far more complexity to how the songs were written and by who. Each Beatles song has its own history and unique way of coming into existence. The Song Michelle, for example, was mainly written by Paul McCartney, with a small portion a collaboration between McCartney and Lennon. Even more interesting, is that other characters came into play. According to Wikipedia:

McCartney asked Jan Vaughan, a French teacher and the wife of his old friend Ivan Vaughan, to come up with a French name and a phrase that rhymed with it. "It was because I'd always thought that the song sounded French that I stuck with it. I can't speak French properly so that's why I needed help in sorting out the actual words", McCartney said.

Vaughan came up with "Michelle, ma belle", and a few days later McCartney asked for a translation of "these are words that go together well" — sont des mots qui vont très bien ensemble. When McCartney played the song for Lennon, Lennon suggested the "I love you" bridge. Lennon was inspired by a song he heard the previous evening, Nina Simone's version of "I Put a Spell on You", which used the same phrase but with the emphasis on the last word, "I love you".

The actual story of how the song was written reveals a much more interesting story than the typical way we assign credit for these songs. I find the story of how something was made, and by whom, way more interesting and informative than a list of a couple of names. I also think it’s a better way to attribute credit as it values the contribution of each individual and brings forward the interesting ways in which they made the contribution. I think this kind of narrative attribution is a far more important way to credit people. It honours both the people and the process a lot better than the more simplified naming of names.

I want to say something about transient attribution in a bit, but before moving on I’d like to give another example of why I think narrative attribution is necessary as we move increasingly into a collaborative future. At FLOSS Manuals, an org I founded 10 years ago to collaboratively produce free software manuals, we automated simplified attribution. If you made an edit, your name was automatically added to the credits page. That worked ok for the naming of names. But how useful is this?

Well, if one person claimed to write the book, this might be useful. But below is an example which illustrates the problem…this is a screenshot of the credits page of a freely licensed book that was updated and rewritten every year by a different team of people for 4 or 5 years. So, the simplified attribution looks like this :

fireshot-capture-1-credits-civicr_-https___docs-civicrm-org_user_en_stable_appendices_credits_

Well…you get the picture! It is pretty meaningless information, or at least, there is not much utility from this kind of attribution. It is, in short, too much information and too little information at the same time. A list of names like this is nothing more than a long list. It doesn’t highlight the many interesting ways individuals contributed, and no one here actually gets much credit at all from such as list because no one will read it. It is pretty much useless.

So…what can we do? Well, I believe we need to get away from simplified attribution at all times. We need to migrate to narrative attribution. We need to learn how to tell stories about how people make things and who was involved. It is for this reason that at FLOSS Manuals we started writing “How this book was written” chapters. Here is an example from the book Collaborative Futures which is now stored in the Wayback Machine. A brief snippet:

This book was first written over 5 days (18-22 Jan 2010) during a Book Sprint in Berlin. 7 people (5 writers, 1 programmer and 1 facilitator) gathered to collaborate and produce a book in 5 days with no prior preparation and with the only guiding light being the title ‘Collaborative Futures’.

These collaborators were: Mushon Zer-Aviv, Michael Mandiberg, Mike Linksvayer, Marta Peirano, Alan Toner, Aleksandar Erkalovic (programmer) and Adam Hyde (facilitator).

It is a short story but it goes some way to bring out a little of the nuance of how the book was made. We could have gone further but it gets the point across. We also made sure that this way of attributing credit was included as a chapter in the book. So wherever the book went, the story of how it was made travelled with it.

I think we could do the same with software. Let’s not conflate copyright with credit, for a start. Next, let’s proceed to a more interesting way of attributing credit. Not a naming of names, but telling a story of who was involved and how. Finally, let’s make sure this story is part of the software and travels with it ie. put the story in the source code repository.

But there is an obvious flaw to this approach. What happens when many people are involved over a long time. If you had been paying attention, for example, to that 29,000 pixel tall monstrosity I included as a screenshot above, you would have already deduced that narrative attribution is not going to do a better job of attributing credit than simplified attribution.

Just how long would the story be for that same book? It would be pretty long! So, how do we deal with this? Surely no one would read that story either? Good point! This is where I believe transient attribution comes into play.

Transient attribution is the recognition that large complicated works take a long time to make. In the case of software, the job pretty much never ends. A software must be updated to add features, or it may need to be refactored, updates needed for security fixes, or to meet the needs of new versions of operating system…it just doesn’t stop. That could mean that we just keep adding to the story, making it longer and longer as we go. But I would like to suggest another approach. I think it is more interesting if we were to tell only the story of the last phase leading up to the current version of the book / movie / software etc…there is really no need to tell the whole story all in one go…break it up into smaller parts. Learn to tell the story as it evolves. The software world already, kind of, does this in Release Notes. We commonly include Release Notes that document the differences between the previous and latest versions of the software. It is, in a way, the story of the software, but it is not the story of the people. Why not adopt this model for attribution too? Focus on the latest part of the story and call people out and celebrate their contributions for this most recent phase.

My recommendation is this:

  1. use narrative attribution to credit people for their work
  2. tell a story that says something about what they did
  3. use transient attribution to tell the story in smaller, more timely, pieces
  4. ensure the story travels with the software (ie. stored in the repo)

It doesn’t feel like such a stretch. It’s not that difficult to do either. The point is, software takes a long time to make, happens in stages, and different people with a diversity of skills come into play at different times. Let’s celebrate all the people that made it happen, and celebrate this as closely as possible to the moment they did the work. Further, the story of how a software is made is far more valuable to everyone than a simple naming of names. If we could take this short step (and it is not far) I think we would have richer attribution, happier communities, and a richer understanding about how software is actually made. And that, if you ask me, is a good thing.

Starting an Open Source Org

I was recently informed that only developers should start Open Source projects. Any other alternative was ‘unwise’.

Yet I think there is a great need to diversify open source operational models and starting a project is the most important culture-setting moment you will ever have. So this kind of advice is unintentionally limiting the possibilities for the new cultures and models that could evolve.  Further, these new models are much needed and are the way forward for open source into areas where it is not having much success. Open source needs to find better ways, for example, to produce software for ‘end users’ as the current culture/models are not doing this very well (and there are good reasons for this).

So, let’s ignore the advice. Instead, I want to suggest to anyone out there that cannot or will not write code (‘never admit you can type’) that you are the future of open source. Your vision, by virtue of the fact you do not write code, is exactly what we need to diversify cultures and methods in this sector. You need to bring this to the table as the ignition for a project and just find a way to make it happen which is consistent with your ideas and your vision. I’m proof that it can work. Don’t listen to those that tell you it is a bad idea, just make it happen.