Open Source

Since 2009/08/05, Hardcoded Software's code has been openly available to everyone under a special license. If you want to read about the rationale behind this, you can read the article I wrote about it, because this page is not about explaining why the source is available, but what it implies, and what can be done with this source.

Source Code

Hardcoded Software's source code is hosted in a Mercurial repository at Bitbucket. These are direct links to those repositories:

Documentation

I have to admit, writing development documentation is not my forte. Thus, to figure out how HS code works, the only method so far has been to dig into the code. However, I've recently started writing documentation with Sphinx and this is what I got so far:

More of it, I hope, will follow shortly.

Development

Each HS product has its own development website (a ticket system). If you want to get involved in HS development, this is where you should start:

External contributions are welcomed. Because of the special nature of those projects (open source projects that pay), non-trivial contributions have a good chance of being paid for by HS. It is in my plan to eventually implement an automated bounty system, but for now, since I'm not even sure if there's interest from developers to make such contributions, things will be ad-hoc. If you see a ticket that you would like to do, send me a quote. If it's reasonable, we'll discuss.

Licenses

The library code is licensed under BSD. This means you can do whatever you want with that code. However, the dupeGuru, moneyGuru and musicGuru code is licensed under a different license, which is this one:

Copyright 2009 Hardcoded Software Inc. (http://www.hardcoded.net)
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted
provided that the following conditions are met:

    * Redistributions of source code must retain the above copyright notice, this list of
      conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above copyright notice, this list of
      conditions and the following disclaimer in the documentation and/or other materials
      provided with the distribution.
    * Neither the name of Hardcoded Software Inc. nor the names of its contributors may be used
      to endorse or promote products derived from this software without specific prior written
      permission.
    * If the source code has been published less than two years ago, any redistribution, in
      whole or in part, must retain full licensing functionality, without any attempt to change,
      obscure or in other ways circumvent its intent.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
    OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
    COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
    EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
    TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
    EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

You may notice that the license is similar to the general BSD license, but the additional clauses make it quite different. This license gives all the right granted by a normal BSD license, except from the right to tamper with the demo limitation code and this, for a period of 2 years after the code's publication. After 2 years, this code becomes licensed under the general BSD license and you can do whatever you want with it.

What you can do. You can compile, modify and redistribute the code, as long as the demo limitations are not touched. This means that you can fork a project, but for a period of two years, the users of your project will need a license from Hardcoded Software to run your fork without limitation. After 2 years however (as long as you don't integrate any further code from HS's codebase during those 2 years), you are free to remove those demo limitations from your fork.

What you can't do. You can't checkout the code, strip demo limitations and then redistribute it. You can't use the applications without limitations without having bought a license. Of course, this only applies for code that has been published in the last 2 years. After that, those limitations don't apply.

In short, it means that even though the source code is openly available, you still need to buy the applications in order to use them without demo limitations.


This site is best viewed with Opera while listening to The White Stripes