Why contribute

From FinMath

Jump to: navigation, search

Contents

[edit] Productivity

[edit] Save your own time using public domain toolboxes

How often have you wanted to use a single function from some toolbox or another, only to discover that you (and anyone else using you code subsequently) must download, unzip, set paths for the toolbox and configure environment variables. This process must be repeated for every other toolbox it depends on, and every computer you or your users happen to use.

[edit] Save other peoples time

The old way puts quite a burden on the end user.

Dear Homer, 

   To use runMyDemo.m please go to the following 
web site: http://www.myTool.springfield.de/projects/bowling/ver1/code/install   
and unzip the toolbox. Run the authors' addPaths routine but note that
they forgot to add the /src/lib/util directory. You'll also need to
get the cooking toolbox (google it, I can't remember the URL). Please find
the attached file myToolbox.zip also. In the /otherStuff/blah directory there
is a demo called runMyDemo.m. I'm going to change it in two weeks though when
the cooking toolbox gets updated. 

Regards,

Marg

Instead, we recommend this:

  Dear Homer, 

  Please cut and paste the following at the Matlab prompt:

    mkdir(prefdir,'fin_math');
    urlwrite('http://www.financialmathematics.com/code/fin_math/fmgrow.m',fullfile (prefdir,'fin_math','fmgrow.m'));
    addpath(fullfile(prefdir,'fin_math')); 
    fmgrow;
    fmuse('/myToolbox'); 
    runMyDemo

  Love,

  Marg

Subsequently, or if Homer has visited Quick start:

  Dear Homer, 

  Please cut and paste the following at the Matlab prompt:

    fmuse('/myOtherToolbox'); 
    runMyDemo

  Love,

  Marg

[edit] Obviate bug fix requests

Let them fix it themselves on the wiki. You can always roll back.

[edit] Work in the open

You can create lecture notes, problem sets, working papers and whatever you like here. You never know who might help.

[edit] Organize your work

Organize your work and others in as many ways as you see fit. There is no tree structured hierarchy here (a restrictive concept at the best of times) beyond the mapping of pages to subdirectories at www.financialmathematics.com/code. Any user may create a wiki page and organize code and theory as they see fit.

[edit] Make it look nice

Well, we think so. Integrated latex is a lot easier to read than mathematical comments in code. This helps others understand your work and helps you remember where you left off. You can also click through to Mathworks documentation on any function.

[edit] Use only what you need

Avoid massive bloated libraries whose dependency structure you will quickly forget.

[edit] Package only what others need

Even wanted to send someone a subset of your work but not the whole shebang? This site obviates sending anything really, but should you wish to do so the explicit dependencies make this easy. You can clobber your prefdir/urlpath/www_financialmathematics_com subdirectory at any time and re-download the latest versions of files in your urlpath with fmuse('-refresh') or urlpath('-refresh').

[edit] Work on multiple machines

Automatic on-the-fly file downloads make it easy to work on multiple machines and multiple operating systems. More convenient at times that remotely hosted source control.

[edit] Scientific and Academic Motivations

In a broad sense the case for open collaboration has been made elsewhere. See for example "WaveLab and Reproducible Research" (pdf) Jonathan B. Buckheit and David L. Donoho, and a more recent opinion piece by Joyner and Stein in notices of the AMS (2007).

More specifically, the science of credit derivative modeling promotes market transparency and other site objectives.

[edit] Get Cited

Implement the method in software, place examples of the software's use in the paper, make the software of broad functionality, and give the software away for free

-From David Donoho's essay on how to be a well cited author in statistics.

[edit] Get feedback

Experts in statistics, finance, mathematics and other fields visit this site.

[edit] Defend yourself against spurious IP suits & intellectual theft

Your contribution is timestamped.

[edit] Work on larger problems

Better organization, ease of collaboration and availability of building blocks frees one to work on more difficult, ambitious and important open problems.

[edit] Commercial and other motivations

There are other commercial motivations for contributing which we hope are shared by private companies as well as academics. This site was established by employees of Julius Finance to assist with academic collaboration, keep in touch with developments in the field, and establish a body of documentation not necessarily conforming to Wikipedia's rules (forward looking articles, commercial references and things of note to very few people). We felt that something was needed in the grey area between source control - which few can be convinced to actually use - and code posting sites, and we created it here. We think contributing to high level public domain code has specific commercial benefits over and above the scientific and productivity gains described below.

[edit] Code quality

All software contains bugs, period. Given enough exposure to sunlight however, the more serious mistakes will be found.

[edit] Validation

As a research company we rely on experts to verify new advances of an algorithmic, financial or mathematical nature. This is most easily done when building blocks are readily available, code can be run on the fly instantly without fuss, and easily readable documentation accompanies the work.

[edit] Talent identification

We are always seeking uniquely talented individuals interested in solving problems quickly and getting their hands dirty. Conventional means of finding them are expensive and inefficient.

[edit] External Links

Personal tools