intro to flr

Post on 01-Nov-2014

1.208 Views

Category:

Education

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Introduction to FLR

FLR Core Team

June 22, 2011

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Outline

1 Introduction

2 Philosophy of FLR

3 What is FLR?

4 Design of FLR

5 What’s next ?

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Outline

1 Introduction

2 Philosophy of FLR

3 What is FLR?

4 Design of FLR

5 What’s next ?

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Outline

1 Introduction

2 Philosophy of FLR

3 What is FLR?

4 Design of FLR

5 What’s next ?

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Outline

1 Introduction

2 Philosophy of FLR

3 What is FLR?

4 Design of FLR

5 What’s next ?

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Outline

1 Introduction

2 Philosophy of FLR

3 What is FLR?

4 Design of FLR

5 What’s next ?

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Need for FLR

Schnute et al. (2007 and 1998) compared the number ofsoftware tools and languages currently available for stockassessments with the Babel tower myth:

”After the people of Babel sought to build a tower to heaven, the Lord

God devised a plan (Genesis 11: 4-7). ’Behold the people is one; and

they all have one language; and this they began to do; and now nothing

will be restrained from them, which they have imagined to do.... Let us

go down, and there confound their language, that they may not

understand one another’s speech.’ Italics highlight the prospects for

accomplishment with a common language, if the scientific community

could ever agree on one”

”The cosmic plan for confounding software languages seems to be

working remarkably well among the community of quantitative fishery

scientists!”

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Need for FLR

Schnute et al. (2007 and 1998) compared the number ofsoftware tools and languages currently available for stockassessments with the Babel tower myth:

”After the people of Babel sought to build a tower to heaven, the Lord

God devised a plan (Genesis 11: 4-7). ’Behold the people is one; and

they all have one language; and this they began to do; and now nothing

will be restrained from them, which they have imagined to do.... Let us

go down, and there confound their language, that they may not

understand one another’s speech.’ Italics highlight the prospects for

accomplishment with a common language, if the scientific community

could ever agree on one”

”The cosmic plan for confounding software languages seems to be

working remarkably well among the community of quantitative fishery

scientists!”

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Need for FLR

Schnute et al. (2007 and 1998) compared the number ofsoftware tools and languages currently available for stockassessments with the Babel tower myth:

”After the people of Babel sought to build a tower to heaven, the Lord

God devised a plan (Genesis 11: 4-7). ’Behold the people is one; and

they all have one language; and this they began to do; and now nothing

will be restrained from them, which they have imagined to do.... Let us

go down, and there confound their language, that they may not

understand one another’s speech.’ Italics highlight the prospects for

accomplishment with a common language, if the scientific community

could ever agree on one”

”The cosmic plan for confounding software languages seems to be

working remarkably well among the community of quantitative fishery

scientists!”

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Goals

To promote and generalize the use of good quality, opensource, flexible software in all areas of quantitative fisheriesresearch and management advice, with a key focus onManagement Strategies Evaluation.

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

A brief history of FLR

I Started by FEMS EU project

I COMMIT & EFIMAS EU projects provided much of timeand sweat

I Presented to ICES WG Methods 2004I FLCore version 1.0 - December 2005

I FLQuant with 5 dimensions, no ”iter”I Release often, release early. Bugs galore

I FLCore version 1.4 - 2007

I Stable, full of treats an joy

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

A brief history of FLR

I Started by FEMS EU project

I COMMIT & EFIMAS EU projects provided much of timeand sweat

I Presented to ICES WG Methods 2004I FLCore version 1.0 - December 2005

I FLQuant with 5 dimensions, no ”iter”I Release often, release early. Bugs galore

I FLCore version 1.4 - 2007

I Stable, full of treats an joy

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

A brief history of FLR

I Started by FEMS EU project

I COMMIT & EFIMAS EU projects provided much of timeand sweat

I Presented to ICES WG Methods 2004I FLCore version 1.0 - December 2005

I FLQuant with 5 dimensions, no ”iter”I Release often, release early. Bugs galore

I FLCore version 1.4 - 2007

I Stable, full of treats an joy

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

A brief history of FLR

I Started by FEMS EU project

I COMMIT & EFIMAS EU projects provided much of timeand sweat

I Presented to ICES WG Methods 2004

I FLCore version 1.0 - December 2005

I FLQuant with 5 dimensions, no ”iter”I Release often, release early. Bugs galore

I FLCore version 1.4 - 2007

I Stable, full of treats an joy

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

A brief history of FLR

I Started by FEMS EU project

I COMMIT & EFIMAS EU projects provided much of timeand sweat

I Presented to ICES WG Methods 2004I FLCore version 1.0 - December 2005

I FLQuant with 5 dimensions, no ”iter”I Release often, release early. Bugs galore

I FLCore version 1.4 - 2007

I Stable, full of treats an joy

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

A brief history of FLR

I Started by FEMS EU project

I COMMIT & EFIMAS EU projects provided much of timeand sweat

I Presented to ICES WG Methods 2004I FLCore version 1.0 - December 2005

I FLQuant with 5 dimensions, no ”iter”I Release often, release early. Bugs galore

I FLCore version 1.4 - 2007I Stable, full of treats an joy

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

FLR 1.4 - The Golden Jackal

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

A brief history of FLR

I 2007-2009: The Silk Road to version 2I New FLQuant with 6 dimensions: uncertainty in structureI Rewrite of most methodsI Extension of methods availableI New classes: FLModelI Stronger use of class inheritanceI Overhaul of man pagesI Simplification of package map

I FLCore version 2.0 - January 2009

I 2.2: actual stable versionI 2.3: under development

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

A brief history of FLR

I 2007-2009: The Silk Road to version 2I New FLQuant with 6 dimensions: uncertainty in structureI Rewrite of most methodsI Extension of methods availableI New classes: FLModelI Stronger use of class inheritanceI Overhaul of man pagesI Simplification of package map

I FLCore version 2.0 - January 2009I 2.2: actual stable versionI 2.3: under development

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

FLR 2.2 - Swordfish Polka

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Mission statement

The FLR project provides a platform for quantitativefisheries science based on the R statistical language. Theguiding principles of FLR are:

I openness - through community involvement and the opensource ethos

I flexibility - through a design that does not constrain theuser to a given paradigm

I extendibility - through the provision of tools that areready to be personalized and adapted.

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Mission statement

The FLR project provides a platform for quantitativefisheries science based on the R statistical language. Theguiding principles of FLR are:

I openness - through community involvement and the opensource ethos

I flexibility - through a design that does not constrain theuser to a given paradigm

I extendibility - through the provision of tools that areready to be personalized and adapted.

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Mission statement

The FLR project provides a platform for quantitativefisheries science based on the R statistical language. Theguiding principles of FLR are:

I openness - through community involvement and the opensource ethos

I flexibility - through a design that does not constrain theuser to a given paradigm

I extendibility - through the provision of tools that areready to be personalized and adapted.

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Mission statement

The FLR project provides a platform for quantitativefisheries science based on the R statistical language. Theguiding principles of FLR are:

I openness - through community involvement and the opensource ethos

I flexibility - through a design that does not constrain theuser to a given paradigm

I extendibility - through the provision of tools that areready to be personalized and adapted.

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

GNU project(http://gnu.org)

”Free software is a matter of liberty, not price.”

free = free speech

free != free beer

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Collaboration and OpenSource

”I think the real issue about adoption of open source is that nobody

can really ever ’design’ a complex system. That’s simply not how

things work: people aren’t that smart - nobody is. And what open

source allows is to not actually ’design’ things, but let them evolve,

through lots of different pressures in the market, and having the end

result just continually improve”

Linus Torvalds

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Development of FLR

FLR is a collaborative development project, where distinctscientists that constitute the FLR Core Team, aka ”Lesmiserables”, work simultaneously on code, documentation, etc.

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Cut the crap, what is FLR?

A working environment for quantitative fisheriesanalysis in R!

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

... and where can I get it ?

I Website (http://flr-project.org/)

I Packages on repository(install.packages(repos=”http://flr-project.org/R”))

I Documentation on wiki (http://wiki.flr-project.org)

I and ”Teach Yourself FLR” (http://tyflr.flr-project.org)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Object orientedprogramming with S4

I A programming language model organized around ”objects”rather than ”actions”

I Uses R S4 classes

I Everything is an object of a particular classI Objects have:

I members (data) andI methods (functions associated with it that act on member

data)

I Inheritence used to extend and create new classes (FLSRinherits from FLModel)

I Classes can be members of other classes (most FLRclasses include FLQuants as members)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Object orientedprogramming with S4

I A programming language model organized around ”objects”rather than ”actions”

I Uses R S4 classes

I Everything is an object of a particular classI Objects have:

I members (data) andI methods (functions associated with it that act on member

data)

I Inheritence used to extend and create new classes (FLSRinherits from FLModel)

I Classes can be members of other classes (most FLRclasses include FLQuants as members)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Object orientedprogramming with S4

I A programming language model organized around ”objects”rather than ”actions”

I Uses R S4 classes

I Everything is an object of a particular classI Objects have:

I members (data) andI methods (functions associated with it that act on member

data)

I Inheritence used to extend and create new classes (FLSRinherits from FLModel)

I Classes can be members of other classes (most FLRclasses include FLQuants as members)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Object orientedprogramming with S4

I A programming language model organized around ”objects”rather than ”actions”

I Uses R S4 classes

I Everything is an object of a particular class

I Objects have:

I members (data) andI methods (functions associated with it that act on member

data)

I Inheritence used to extend and create new classes (FLSRinherits from FLModel)

I Classes can be members of other classes (most FLRclasses include FLQuants as members)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Object orientedprogramming with S4

I A programming language model organized around ”objects”rather than ”actions”

I Uses R S4 classes

I Everything is an object of a particular classI Objects have:

I members (data) andI methods (functions associated with it that act on member

data)

I Inheritence used to extend and create new classes (FLSRinherits from FLModel)

I Classes can be members of other classes (most FLRclasses include FLQuants as members)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Object orientedprogramming with S4

I A programming language model organized around ”objects”rather than ”actions”

I Uses R S4 classes

I Everything is an object of a particular classI Objects have:

I members (data) and

I methods (functions associated with it that act on memberdata)

I Inheritence used to extend and create new classes (FLSRinherits from FLModel)

I Classes can be members of other classes (most FLRclasses include FLQuants as members)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Object orientedprogramming with S4

I A programming language model organized around ”objects”rather than ”actions”

I Uses R S4 classes

I Everything is an object of a particular classI Objects have:

I members (data) andI methods (functions associated with it that act on member

data)

I Inheritence used to extend and create new classes (FLSRinherits from FLModel)

I Classes can be members of other classes (most FLRclasses include FLQuants as members)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Object orientedprogramming with S4

I A programming language model organized around ”objects”rather than ”actions”

I Uses R S4 classes

I Everything is an object of a particular classI Objects have:

I members (data) andI methods (functions associated with it that act on member

data)

I Inheritence used to extend and create new classes (FLSRinherits from FLModel)

I Classes can be members of other classes (most FLRclasses include FLQuants as members)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Object orientedprogramming with S4

I A programming language model organized around ”objects”rather than ”actions”

I Uses R S4 classes

I Everything is an object of a particular classI Objects have:

I members (data) andI methods (functions associated with it that act on member

data)

I Inheritence used to extend and create new classes (FLSRinherits from FLModel)

I Classes can be members of other classes (most FLRclasses include FLQuants as members)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Design principles

I Classes to represent different elements of fisheries systems

I ’physical’ objects (e.g. FLStock class represents a fishstock)

I ’methodological’ objects (e.g. FLBRP class containingmethods to calculate BRP)

I Link objects to create simulations - Lego blocks (MSEexample)

I Learning curve: trade off between flexibility and simplicity(no black boxes and no handle turning)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Design principles

I Classes to represent different elements of fisheries systems

I ’physical’ objects (e.g. FLStock class represents a fishstock)

I ’methodological’ objects (e.g. FLBRP class containingmethods to calculate BRP)

I Link objects to create simulations - Lego blocks (MSEexample)

I Learning curve: trade off between flexibility and simplicity(no black boxes and no handle turning)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Design principles

I Classes to represent different elements of fisheries systems

I ’physical’ objects (e.g. FLStock class represents a fishstock)

I ’methodological’ objects (e.g. FLBRP class containingmethods to calculate BRP)

I Link objects to create simulations - Lego blocks (MSEexample)

I Learning curve: trade off between flexibility and simplicity(no black boxes and no handle turning)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Design principles

I Classes to represent different elements of fisheries systems

I ’physical’ objects (e.g. FLStock class represents a fishstock)

I ’methodological’ objects (e.g. FLBRP class containingmethods to calculate BRP)

I Link objects to create simulations - Lego blocks (MSEexample)

I Learning curve: trade off between flexibility and simplicity(no black boxes and no handle turning)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Design principles

I Classes to represent different elements of fisheries systems

I ’physical’ objects (e.g. FLStock class represents a fishstock)

I ’methodological’ objects (e.g. FLBRP class containingmethods to calculate BRP)

I Link objects to create simulations - Lego blocks (MSEexample)

I Learning curve: trade off between flexibility and simplicity(no black boxes and no handle turning)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

Design principles

I Classes to represent different elements of fisheries systems

I ’physical’ objects (e.g. FLStock class represents a fishstock)

I ’methodological’ objects (e.g. FLBRP class containingmethods to calculate BRP)

I Link objects to create simulations - Lego blocks (MSEexample)

I Learning curve: trade off between flexibility and simplicity(no black boxes and no handle turning)

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

FLR & S4FLR hierarchical model

FLCore

classesmethods

2ndry pkg

classesmethods

extends

inherits

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

PackagesFLR packages' development model

FLCore

FLEDA FLAssess

FLXSA FL...

FLash

FLBRP

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

MSE - The Lego blockapproach

Introductionto FLR

FLR CoreTeam

Introduction

Philosophyof FLR

What isFLR?

Design ofFLR

What’s next?

What’s next ?

top related