Skip to content

Instantly share code, notes, and snippets.

@jkereako
Forked from malarkey/Contract Killer 3.md
Last active January 21, 2021 20:22
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save jkereako/929f26ec5ce4727c7bd5 to your computer and use it in GitHub Desktop.
Save jkereako/929f26ec5ce4727c7bd5 to your computer and use it in GitHub Desktop.
This is a more serious version of Contract Killer 3. Some language and provisions were taken from a lawyer-speak contract and injected here.

date

Identification of parties

This agreement is made between customer name ("you") of company name located at customer address and developer name ("us") of developer's company located at company address.

Purpose of agreement

You desire to retain us as an independent contractor to develop the name of application (the "application") described in the section, Technical specifications.

We are ready, willing and able to undertake the development of the application and agree to do so under the terms and conditions set forth in this agreement.

Technical specification

The following section briefly describes the individual technologies that will comprise the application. All of the technologies are open source and free to use and modify.

Bootstrap

We will build the application with the user interface with Bootstrap. Bootstrap is, according to their website, "the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web." This will minimize time spent designing the user interface since most of it is taken care of by Bootstrap. This allows us to focus on the functionality of the application.

Flask

We will build the application with Flask. Flask is a small, web application framework built in Python. We chose Flask because of its simplicity and popularity.

SQLite

Because, initially, we do not expect a large user base, we will use the SQLite database engine. A SQLite database is contained in a single text file and that file will be stored in the application's root directory. This eliminates the need for a separate database server and thus eliminates much of the usual complications involved in configuring a database.

Git

We will track revisions of the application using the source control management tool, Git.

Functional specification

Users will be able to register account through a contruct we build in Flask. The user's information will be saved in a SQLite store and information will be presented to him using Bootstrap's constructs.

Payment

As stated in the project proposal, we shall be compensated at the rate of $0.00 per hour. Unless otherwise agreed upon in writing, your maximum liability for all services performed during the term of this agreement will not exceed $0.00.

In a show of good faith, we require the first 0 hours, or $0.00 as a down payment prior to undertaking the development of the application.

Schedule

We will invoice you via billing service at every 0 days. You will pay us within 0 days of our submission of the invoice.

Changes and revisions

Additional features which we determine to be outside of the agreed upon project scope will require a separate estimate.

After delivery

User acceptance testing periods

Beginning the day after the date of delivery of the final product you will have 0 days to inspect, test and evaluate the application to determine whether the application satisfies the acceptance criteria.

You will draft a document containing the acceptance criteria and we will approve it prior to the commencement of the acceptance testing period.

If the application does not satisfy the acceptance criteria, then we will attempt to resolve errors you discover during the acceptance testing period at the project rate ($0.00).

If we do not hear from you during the acceptance testing period, then the acceptance testing period will terminate after 0 days.

Technical support

We will attempt to resolve errors you discover after the acceptance testing period for the hourly rate of $0.00.

You are under no obligation to seek technical support from us.

Legal stuff

Limitation of liability

We cannot guarantee that the final product we deliver to you will be free of errors. As such, in no event shall we be liable to you for your lost profits or special consequential damages resulting from errors in or misuse of the application, even if you have advised us of the possibility of such damages.

To reduce the chance of this catastrophe from happening we insist that you do not release the application to the public until after the application has been thoroughly tested during the acceptance testing period.

Ownership

This section describes which party owns which parts of the application. The main idea is to give you full ownership of the final product while allowing us to retain ownership of the routines and algorithms we invent along the way. Good programmers write code once and reuse that code in other projects.

Ownership of the application

After we receive your final payment, you will own the entire application, which, lawyers refer to as the "work product". In this context, the application is the combination of the User Interface elements, the source code and the database which includes all of the data stored said database.

Ownership of background technology

"Background technology" is the fundamental functional components of the application including design patterns, data structures, class structures, functions, methods, algorithms, routines and subroutines. In other words, it's the individual parts of the application.

You have an unlimited license to use the background technology for the application to operate. You cannot sell the background technology or publicly claim that it is yours without written consent from us.

Background technology does not include any assets or technology you provide to us. You still retain ownership.

Other rights

We reserve the right to display screen shots of the public-facing portion of the application for our portfolio. We reserve the right to link to the public-facing portion your application. We also reserve the right to write about the application on websites, in magazine articles and in books. We guarantee that we will never release the source code nor divulge any confidential information to any third party.

This agreement is non-transferable

Just like a parking ticket, you cannot transfer this agreement to anyone else without our permission. This agreement stays in place and need not be renewed. If for some reason any part of this agreement becomes invalid or unenforceable, the remaining parts of it remain in place.

Although the language of this agreement is simple, this is still a legal document under the jurisdiction of United States courts.

The dotted line

By signing this document, each party guarantees they are authorized to bind their respective organizations to this agreement.

@samlopez-dev
Copy link

Awesome, thanks!

@CRTX
Copy link

CRTX commented Nov 30, 2016

What in the world do you mean by "background technology". I'm a developer and even I'm not sure what this means. Specific examples to explain would help both the developer and client understand this contract.

@jkereako
Copy link
Author

jkereako commented Dec 3, 2016

@CRTX

It's a legal term. On this page is a description of background technology.

I understand background technology as the basic parts of the product you build for a client. So things like architectural designs, algorithms and so forth. This clause states that you retain ownership of the background technology so you can use it elsewhere.

However, to your point, I was never convinced this clause adds any value because "background technology" is an esoteric term only understood by IP lawyers. As you can see from my update, this particular clause caused a problem for a slow-paying client of mine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment