Monday, 29 July 2013

How to Make & Sell Software Without Going to Hell

There can be a lot of legal and ethical issues with the production, sale, and protection of digital goods (which have near zero duplication cost so the payment for a copy is a return on the development investment and not really about paying for the cost of making the copy).  Here is an outline that has evolved as an intranet document for the last few years providing some guidance to making a fair deal with users, developers, and investors.

This is very much a work in progress document that has gone under several major revisions, is not written in a consistent style, and could easily have flaws in the logic that it argues as a unified approach to software sales in this era of global and digital distribution.  Expect future revisions from time to time, which will be flagged as such.  Now seems as good a time as any to expose it to the critical light of day.

Respect for the users

Software is being executed on the user's hardware.  Our code is a guest on their system.  Through this lens the obligations of the developer are clear and unacceptable behaviour stands out far more starkly against a background where major developers have lost sight of this fact.

Customers are being sold content, that is the personal license to all the copyrighted works involved and without limitation on their freedoms within the overall restrictions that copyright involves (to limit further duplication).  Users cannot duplicate content for others, especially for sale, but spending time and effort restricting their right to play with the copy they now own is wrong-headed.

Enabling users to express this freedom to tinker with the copy they own without impairment includes distribution of our source code with every sale (not to be redistributed to non-owners, same as all other content sold in the package).  No DRM or online activation should prevent the user from accessing their copy of the software.  No End User License Agreement (EULA) needs to be signed for use of our software.

Added 1/11/13: A personal license (if one is required by the local laws) to duplicate the content sold for personal, private use is required to enable the previous two clauses to work.  The access to source code is no use without, at minimum, the ability to create a translated duplicate via compilation.  This freedom does not provide license to duplicate work for others who do not hold their own license to the material (via purchase of our software).

Copyright was not designed to operate how it currently does.  We will release titles with a clear expiry date of copyright at which point it will transfer to the public domain for easier reuse and remixing into the wider culture without the need to show fair use.  We will also attach an upper bound price to the effort that created the work, if this return is realised (after taxes) then the work will be released to the public domain before the expiry date.

We will always try to balance the rights of our customers when it comes to creation of derivative works (and the line between this and uncopyrightable ideas that may be freely reused) and protecting fair use vs the defence of our copyrights to avoid improper monetisation and distribution of our work.  In cases such as online streaming and screenshot photography we believe in most cases this is a clear fair use (generating a transformative derivative work which justifies a fair use defence) and even if not the slight monetisation of ad supported streaming is not something any sane developer should ever try to limit.

Edited 5/8/16: We certainly allow any customers to stream out their experience of our software, including on monetised streams such as competitive gaming and ad-supported "let's play"s as a derivative work for which the creators should also claim their own copyright to protect their work.  We would request creators contact us before fully commercialising (via, for example, digital or disc sales of footage) a derivative work so we can agree that the bar for fair use is being crossed and can provide legal clarity & security to their IP via any free license.

Users should be invited into the community spirit of submitting patches to progress the main software for all owners and offering up modifications (mods) for use by other owners of the base software.  A system for sharing should be created to allow this to avoid the issue with distributing copyright material to people who potentially do not own the game and so should not have legal access to the base code / assets (underlying work).  The creation of mods usually involves the creation of derivative and independent works and the additional copyrights this generates should be protected while offering an easy way for those who desire to share this work (providing permission for their copyrighted work to be shared and even remixed).

Due to the desire to play on a level playing field, the use of multiplayer should attempt to enable a restricted mode where each player knows that the other is playing by the same rules.  This does not mean no mods or that this is the only way people can play together.

Games are a set of agreed restrictions on play.  House rules are the ability of players to agree on the rules outside of a dictated set from the game designer.  We should enable players to implement house rules as far as is possible.  Viewed at a certain angle then Counter-Strike is just a particularly complex set of house rules for multiplayer Half-Life.

LAN play is an expression of the freedoms granted to users to play outside of a managed online experience.  The addition of LAN spawn installs provides possibilities for players to evangelise multiplayer modes and should be considered as a mulitplayer demo mode where possible.  DRM free software does not technically restrict players from simply duplicating the software for this purpose but our copyright assertion is that this is not acceptable so a LAN spawn option must be developed to enable this promotional duplication use.

Solo cheats are an expression of the freedom to modify the copyrighted works sold, they should not be offered as DLC for sale and if they are offered for sale as part of an online component then that is an implicit permission for users to modify their client to make it seem like they have already purchased these cheats.  Basically don't do it because it's bad design and ethically questionable.

Customers are buying.  This means they gain something after handing over money.  Systems must never be built that allow players to give money without gain unless they are clearly marked as pure donations.  (egregious example:) If a virtual currency exists then it must not be simply deleted as it is unspent money (that this needs to be committed to such a document is remarkable).  Customers must be made aware of exactly what they are buying (for example if you've already sold a game including music files then the soundtrack may be no more than a more easily accessible and mp3 formatted version of something they already own).

The case can and has been made that pre-orders do not serve the industry as a whole in best matching users who wish to spend money with the most enjoyment they can derive from this purchasing power.  We currently err on the side of not taking money for the promise of future, as yet unscrutinised, content.  Companies leveraging their future value is not at all unusual and many smaller developers can only afford to develop the projects they are passionate about by leveraging the risk of their fan base.  This is a dangerous path and we are not certain of our ability to repay that risk transferral with adequate value.  Companies with several billion dollars in revenue certainly do not need you to take on risk by pre-ordering games and should rather look at revenue via the long tail of the extensive catalogues they already control and have full access to.

Current game sales management, discounting, and pricing are designed around a model that does not accept the first-sale doctrine or similar legislation that provides balance to copyright by forcing the author to compete on price with the existing copies of a work they have duplicated using their exclusive right.  We would like to move the industry towards recognition of this consumer right but expect to find some technical and competitive hurdles to implementing it unilaterally in the current marketplace.  We are open to suggestions for how to allow this but hope the marketplace can be transformed by establishment of president in cases such as those currently going through European court.

We hope retail partners will be open to facilitating such consumer rights to trade and gift 'used' games on their stores.  Due to the DRM-free (and shared source) nature of our product, transferring the product under protection of first-sale doctrine (by moving the copy, not duplicating it) will not be prevented by any technological means and we would not try to oppose it; our sales partners may not share this view and so would prevent transferral of the download access (which complicates the ability to unilaterally offer transferral of an online account to a new owner without incurring the cost of providing this download link ourselves or expecting the user to manage their own backup solution, such a burning to a disc or saving to a backup hard drive).

Exclusionary design and narratives that restrict the reach of our games via bigoted, outdated, simply wrong-headed choices do not help sales and do not show a respect for our customers.  This is not the same as targeting a niche of enthusiastic gamers with a narrow focus title even if the distinction between the two may be more of a scale than two distinct categories.  We always aim to try and respect all people and minimise the effect of our prejudices on our design and the stories we tell.

This extends to not discriminating against who should be able to buy our games, while fitting into whatever local legal system exists at the point of sale. We will be out here on the internet selling to everyone for the same price (baring local taxes that we are required to collect and with some lag from constantly moving exchange rates) on the same day and with the same content.  Obviously there are global legal issues that may impede our ability to execute this but we will never choose to impose limits.

Respect for the developers

Full chain of content creation and use.  Was it included in some way in the bundle sold to users?  Then they deserve to be credited.  Creation is a chain and so that doesn't mean the final assets need to have been directly created by someone, was their work reworked to generate a derivative work?  Authorisation is required (usually through employment contract) and deserves crediting.

Everyone has to right to be an Alan Smithee.  This is the balance to the previous mandate.  Working on something gives you the right to be credited but you can obviously always opt out, especially as it might not have been you who last touched something.

While we try and release some of the copyright restrictions on our own creations to better serve the users and wider culture, we also understand the importance of these copyrights to other developers and comply with them.  We will always respect the copyrights of others and their work.  We will work with external parties contributing to our projects to make sure we can secure licensing for work that allows us to bundle it under the same restrictions we distribute under or with a clearly separated line between the works (which may come up with items like licensed music).

Crunch is counter-productive beyond a few days.  We can all push ourselves to get stuff done but to do things well (and coders know this all too well as they debug the code they wrote on hour 20 of a binge) rest and time off are key.  Not only can crunch not be considered mandatory working conditions, it must be prevented to ensure the quality of work is maintained.  We want to make great software, but we're not going to ruin people's lives to do it.  We believe in sustainable development.

We believe in the independent review process and the scoring of games based on the viewpoint of the author as much as the technical merits of the software or even an 'objective' evaluation of the merits of the work.  We will not base bonuses on averages of review scores or work with investors who make such demands.  As sales drive our available cash then we may create bonus structures around sales figures so the bonuses can be calculated to pay for themselves.

Unions are a valid form of collective bargaining for workers.  We will work with unions and help to enable our staff to join or create them while preserving the freedoms of the individual staff.  In practical terms that means we will not agree to terms that require or compel union membership (distinct from that of a professional body) as a condition of a job opportunity.  While it may be considered in the interests of the individual employee to reinforce the power of a union, we do not agree with the removal of their freedom in this way to facilitate it.

No developer should be unaware of our commitments to the customer and how this restricts our actions.

Respect for the investors

The best way to increase the value of the company is to serve our customers, which will provide long term revenue streams on which to generate profits.  Short term revenue maximisation methods are fundamentally flawed.

No investors should be unaware of our values before investing.



All of the above are practical and ethical positions.  We do not believe in the religious zealotry of declaring such ideas dogmatic or that we must only work with others who exactly share these ideals.  This is not a commitment to forever hold or apply the above notions to our work; our position may evolve, it is simply a snapshot of our current thinking.