OpenSource Desktop GIS Developments – Is OpenJUMP GIS approaching your Desktop? Stefan Steiniger GIUZ, University of Zürich
[email protected]
UZH GIS BrownBag 1. Nov 2007
1
My Motivation objectives: • clarify some points on opensource software • give an overview on opensource GIS tools • talk on OpenJUMP GIS and its development uDIG, Image: Refractions.net
OpenJUMP, Image: Uwe Dallüge GRASS GIS, Image: M. Lennert (http://grass.itc.it) UZH GIS BrownBag 1. Nov 2007
Quantum GIS, Image: M. Neteler (pinus.chinju.ac.kr) 2
Outline
1. OpenSource and Free Software 2. OpenSource GIS 3. JUMP GIS and OpenJUMP 4. Why using FOSS as researcher?
UZH GIS BrownBag 1. Nov 2007
3
Examples of OpenSource Software (OSS) OpenSource on the Desktop: • Mozilla Firefox (browser) & Thunderbird (email client) • OpenOffice • Inkscape (vector) & GIMP (images) - drawing • FreeMind • PDFCreator • VideoLan Player (VLC) • JabRef – bibliography tool • MikTex & TeXnicCenter OpenOffice • Miranda IM - messenger • R, SciLab, GStat - statistics
VLC
FreeMind
JabRef
SciLab GIMP UZH GIS BrownBag 1. Nov 2007
R 4 images: Wikipedia/en
Outline
1. OpenSource and Free Software •
3 Questions
•
2 Licenses (GPL & LGPL)
•
3 Misconceptions and 6 Myths
Note: talking about software licensing isn‘t a piece of cake
UZH GIS BrownBag 1. Nov 2007
5
1. OpenSource and Free Software (1) What makes up a Free („copyleft“) Software? Free OpenSource Software (FOSS) meets 4 Constraints (www.fsf.org): 1. The freedom to run the program, for any purpose (freedom 0) 2. The freedom to study how the program works, and adapt it to your needs (freedom 1). 3. The freedom to redistribute copies so you can help your neighbor (freedom 2). 4. The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3).
UZH GIS BrownBag 1. Nov 2007
6
1. OpenSource and Free Software (2) Is there a difference between OpenSource and Free Software? OpenSource: is a term and „brand“ (Open Source Initiative - OSI: opensource.org)
Free Software: is a philosophy (Free Software Foundation - FSF: www.fsf.org)
-
Both describe software that is free of onerous licesense restrictions (use, copy, study, modify) But the word „OpenSource“ does not tell about the freedom to modify and redistribute A few cases exists where OSI approved licenses are not FSF approved
-
Do I need to care?
not really, it is not about the terms OpenSource or FOSS, but about a specific license
UZH GIS BrownBag 1. Nov 2007
7
1 OpenSource and Free Software (3) Terms related to OpenSource and Free Software
some license types
Source: Chao-Kuei (www.fsf.org/licensing/essays/categories.html)
UZH GIS BrownBag 1. Nov 2007
8
1. OpenSource and Free Software (4) What are differences between OpenSource and Proprietary Software? Proprietary Software (e.g. Microsoft Office, ArcGIS)
OpenSource / Free Software (e.g. OpenOffice, GRASS GIS)
+ warranty* of developing company on product :holds for every company + components should work together + usually well documented software
+ no license fees + unrestricted use (e.g. # installations) + no update enforcement + support of open standards + customization at API level - installation knowhow necessary - training costs**
- price & maintenance fees - customized development is difficult - support as long as company exists
*) BUT: license agreements often exlucede warranty **) BUT: user choice to invest in own resources or buy
Based on comparison by Martin Weis (2005)
Note: I did not use the term commercial software here! UZH GIS BrownBag 1. Nov 2007
9
Outline
1. OpenSource and Free Software •
3 Questions
•
2 Licenses (GPL & LGPL)
•
3 Misconceptions and 6 Myths
UZH GIS BrownBag 1. Nov 2007
10
1. OpenSource and Free Software (5) -
Several OSI and FSF approved licenses exists (large development projects have sometimes own ones)
-
well known OpenSource licenses: •
GNU General Public License (GPL – full protection of freedoms)
•
GNU Lesser General Public License (LGPL – full protection)
•
BSD (Berkeley), XFree86 (MIT), Apache, Mozilla, … (limited prot.) | (no protection) | …
Btw: What‘s GNU? ☺ UZH GIS BrownBag 1. Nov 2007
11
1. OpenSource and Free Software (6) The GNU General Public License - an immune license! some license terms (of GPL Version 2): • allows to run the program for your own purpose (§0) • allows to copy and distribute -- if the GPL license/copyright is contained (§1) • allows to modify the code and to distribute these versions -- if the modifications are documented and the modified versions are also licensed under GPL(!) (§2) • allows distribution of the program and modified versions only -- if source code is attached or available (written offer) for 3 years (§3) • „You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.”
UZH GIS BrownBag 1. Nov 2007
12
1. OpenSource and Free Software (7) What is meant if people say GPL is immune? - When GPL software is modified or extended by others the license must still be GPL (another license is not allowed) - When GPL software parts (i.e. as a function library) are used by other software, then the license with the stronger restrictions/freedom remains, i.e. GPL license „wins“. (e.g. BSD & GPL = GPL) To avoid the latter effect: Lesser GPL was introduced. LGPL is very similar to GPL, but LGPL libraries can be used by nonGPL licensed software. (e.g. ESRI+GPL= , ESRI+LGPL = ☺) Note: dual-licensing is an option and often done, this is possible because the developer has still author rights on his work.
UZH GIS BrownBag 1. Nov 2007
13
Outline
1. OpenSource and Free Software •
3 Questions
•
2 Licenses (GPL & LGPL)
•
3 Misconceptions and 6 Myths
UZH GIS BrownBag 1. Nov 2007
14
1. OpenSource and Free Software (8) - Myths Misconceptions about the GPL license*: 1 – „If you use code licensed under the GPL, you have to release your program's source code no matter what." Correct: source code must be released only if you distribute the software 2 – „Software licensed under the GPL must be given away for free, it cannot be sold." Correct: Copies can be sold and download fees raised.. the one who pays is …. But what you pay usually for is documentation. 3 – „Any software created with GPL tools must be released under the GPL." Correct: Programs created with opensource software are not affected by the GPL. Only programs that inlcude GPL code. * http://en.wikipedia.org/wiki/GNU_General_Public_License UZH GIS BrownBag 1. Nov 2007
15
1. OpenSource and Free Software (9) - Myths Parts of the following are taken from M. Wheatley*: - Myth 1: The attraction is the price tag Wheatley: stability and effectivity may be other factors** - Myth 2: Savings aren‘t real Wheatley: because you don‘t pay for every copy of the software you can safe money - Myth 3: There is no support If there is a user base, there is support. For instance for OpenJump GIS offer 2 companies paid support in Germany alone. - Myth 4: It is a legal minefield several off-court arrangements took place; indemnifications are offered; in 2006 GPL proved ist validity as license on a court in Munich (Landgericht I). * M. Wheatley, 2004: The myths of Open Source, www.cio.com ** ACTUATE, 2007: attraction no license fees: 82.8% UZH GIS BrownBag 1. Nov 2007
16
1. OpenSource and Free Software (10) - Myths Parts of the following are taken from M. Wheatley*: - Myth 5: OpenSource isn‘t for mission-critical applications Wheatley: a banking system (Banca Popolare di Milano) runs with opensource components - Myth 6: OpenSource isn‘t ready for the desktop that‘s something I am hoping to refute below ☺ Btw: interesting figures - 50% of OSS projects started by companies with comercial intention* - In Germany 59% of companies „use“[?] OSS software (US: 48%)** - 80% of OSS developers are IT professionals (96% male )*** *) missing original source **) ACTUATE (2007) ***) Robes et al. (2001), Hertel et al (2003), Open Source Jahrbuch 2006: p. 210 UZH GIS BrownBag 1. Nov 2007
17
Outline
1. OpenSource and Free Software 2. OpenSource GIS 3. JUMP GIS and OpenJUMP 4. Why using FOSS as researcher?
UZH GIS BrownBag 1. Nov 2007
18
Outline
OpenSource GIS • Organization: A shared and divided World? • OS GIS projects: Building a Spatial Data Infrastructure with OSS? • FOSS Desktop GIS: Only a selective overview!
UZH GIS BrownBag 1. Nov 2007
19
2. OpenSource GIS (1) Organizational Issues - clarification: OpenGIS/OpenGeospatial Consortium ≠ OpenSource, but rather about standards and „interfaces“/communication - official body since 2006: OSGEO Foundation (www.osgeo.org) - Infos on OSS: www.freegis.org - conference series: FOSS4G (worldwide, www.foss4g2007.org, 670 participants) FOSSGIS (DE, www.fossgis.de)
UZH GIS BrownBag 1. Nov 2007
20
2. OpenSource GIS (2) A shared and devided world? - GIS tools developed and maintained by companies vs. enthusiasts - C(++) projects vs. JAVA projects - libraries vs. web tools vs. desktop applications - OSGEO supports 12 software projects (3.Aug.2007), => What about the others?
UZH GIS BrownBag 1. Nov 2007
21
Outline
OpenSource GIS • Organization: A shared and divided World? • OS GIS projects: Building a Spatial Data Infrastructure with OSS? • OSS Desktop GIS: Only a selective overview!
UZH GIS BrownBag 1. Nov 2007
22
2. OpenSource GIS (1) Projects - „Bits“ of History: Grass GIS* – 1978/80 first libraries: US Army Corps of Eng. (CERL) . because ArcInfo was to expensive . Fort Hood IS in 1982, Grass 1.0 in 1985, . last release (V4.1) in 1992 . revival in 1997/1998 (Baylor Univ. & U. of Hannover) . relicensing to GPL in 1999 Proj/Proj.4 – early 1980, Library for projections by USGS (Evenden 2003) OpenMap – GIS toolkit, started 1992 as MATT with DARPA founding OGR/GDAL – Library for raster and vector formats by F. Warmerdam . focus on data conversion, launch in 1998 FreeGIS.org ‘99, UMN MapServer 96/97, PostGIS in 00/01, JTS 00/02 Desktop: SAGA ‘01/2, Thuban ‘03, JUMP ‘02/3, QGIS ‘02/3, uDIG ‘04/5 *) Westervelt (2004) UZH GIS BrownBag 1. Nov 2007
23
2. OS GIS Projects (2) - non-exhaustive overview of projects in P. Ramsey (2004, 2006, 2007) - GIS core tools projects (data i/o, api‘s, projection, indexing, geometry): . GDAL/OGR . GeoTools
(OSGEO)
(OSGEO)
& DeeGree
(lat/lon)
& GeoAPI
(OGC)
. Proj4 (projection library) . Java Topology Suite (JTS) & Geometry Engine OS (GEOS) C++ Applications*
Java Applications*
* Ramsey (2006) UZH GIS BrownBag 1. Nov 2007
24
2. OS GIS Projects (3)
Can we built a Spatial Data Infrastructure with OpenSource GIS tools?
UZH GIS BrownBag 1. Nov 2007
25
2. OS GIS Projects (4) Example of a Spatial Data Infrastructure (SDI):
End User (e.g. Municipality / NGO) Map Viewer Thin Client
WebMapServer
http://
INTERNET
GeoPortal
DesktopGIS GIS Analyst
DataStorage Data Provider
UZH GIS BrownBag 1. Nov 2007
Map Editor Thick Client
DesktopGIS Data Collector 26
2. OS GIS Projects (4) Example of a SDI with OpenSource Components: End User (e.g.
Municipality / NGO)
UMN MapServer, GeoServer, Deegree, (MapGuide OpenSource)
http://
GIS Analysis: Data Storage: GRASS GIS + QGIS, PostGIS, Kosmo, gvSIG, SAGA,... (H2 spatial)
INTERNET
GeoPortal
Thin Client: MapBuilder, Mapbender Thick Client: uDig, QGIS, Thuban, ...
Data Collection: OpenJUMP, ...
UZH GIS BrownBag 1. Nov 2007
27
Outline
OpenSource GIS • Organization: A shared and divided World? • OS GIS projects: Building a Spatial Data Infrastructure with OSS? • FOSS Desktop GIS: Only a selective overview!
UZH GIS BrownBag 1. Nov 2007
28
2. FOSS Desktop GIS selection - since 2002 a number of free Desktop GIS projects started (> 5) - GRASS GIS and OpenMap earlier, but with military background - different foci of OS GIS: . user background: . application: . main data type: . devel. platform:
novice, familar user vs. expert data editing, conflation, analysis, viewing raster vs. vector C++, Java, Python, (PhP?)
UZH GIS BrownBag 1. Nov 2007
29
2. FOSS Desktop GIS selection – OVERVIEW 01. GRASS 02. Quantum GIS (QGIS) 03. JUMP GIS family: OpenJUMP – SkyJUMP – deeJUMP - PirolJUMP 04. uDig : (recently joined by/with JGrass team: dedicated to hydro - geomorphology) 05. SAGA 06. Thuban : GIS viewer 07. Kalypso : (dead?) 08. gvSIG 09. Kosmo 10. OpenMap : GIS ToolKit 11. ILWIS 12. mezoGIS : GIS viewer 13. Fmaps : (dead) 14. OrbisGIS : under development (promising) not opensource, but free for use: Spatial Commander, Forestry GIS, Google Earth, ArcExplorer, TNTlite, TatukGIS Viewer, ... UZH GIS BrownBag 1. Nov 2007
30
2. FOSS Desktop GIS selection Desktop GIS
Evaluation criterion
user level appl. focus
platfom standards
community
FamiliarU- Vec+Raster, Expert (Res)Analysis NoviceVec+Raster, FamiliarU Viewing, GRASS-GUI NoviceVector, Web, Expert Viewing, Anal.
Linux, Mac (Win) [C, Win,Linux, Mac [C++]
Win,Linux, Mac [Java]
gvSIG 1.0: SFS, User: ww, strong WMS, WFS, Dev: Company WCS, WMC, GML
ILWIS
FamiliarU- Vec+Raster Expert (Res)goal: ArcView functionality++ NoviceVec+Raster Expert Analysis
Win [MS Visual C]
SAGA
FamiliarU- Raster, Expert (Res)Analysis
Win,Linux, [C++]
WFS,WCS under development ???
GRASS QGIS* uDig* gvSIG
NoviceVec, Editing, JUMP / Expert (Res) Analysis OpenJUMP
Win,Linux, Mac [Java]
support
Grass 6.3: GML User:ww, large Prof., (via OGR), Dev: Universities lists (++) WFS, WMS QGIS 0.9: WMS, User: ww, strong Prof., WFS, SFS (via PostGIS), GML Dev: ww, Volunt. lists (++) (via OGR) uDig 1.1: SFS, User: ww, growing Prof., WMS, WFS, Dev: Companies lists (++) GML, SLD
Prof., lists (++)
User: ww, strong Prof., Dev: ITC/ 52°Nord lists (++) User: strong Prof., Dev: UniGöttingen lists (+)
Win,Linux, OJ 1.2: SFS, User: ww, growing Prof., WMS,GML,SLD (Mac)[Java](WFS/-T plugin) Dev: ww, Volunt. lists (++)
*) strong development activities: application focus may extend, ww = worldwide UZH GIS BrownBag 1. Nov 2007
authors ranking
31
2. FOSS Desktop GIS – Geographic Resource Analysis Support System (http://grass.itc.it/)
1st screenshot of Windows prototype
GRASS GIS Image: M. Lennert (http://pinus.chinju.ac.kr/grass/grass63/screenshots/images/native_wingrass63.jpg) UZH GIS BrownBag 1. Nov 2007
32
2. FOSS Desktop GIS – Quantum GIS (www.qgis.org)
note: link to Grass tools
Quantum GIS Image: M. Neteler (pinus.chinju.ac.kr) UZH GIS BrownBag 1. Nov 2007
33
2. FOSS Desktop GIS – user friendly Desktop Internet GIS (http://udig.refractions.net/)
Developer: Refractions Research Inc. (Canada), Axios (ES), Organizations based on Eclipse RCP
uDig Image: http://udig.refractions.net/confluence/display/UDIG/Screenshots UZH GIS BrownBag 1. Nov 2007
34
2. FOSS Desktop GIS – Generalitat Valencia Sistema d‘Informacio Geografica (http://www.gvsig.gva.es/index.php?id=gvsig&L=2)
Developer: IVER Techn. (Spain) Budget: 12 M.e 4 years, 40dev from Region of Valencia
gvSIG Image: http://www.gvsig.gva.es UZH GIS BrownBag 1. Nov 2007
35
2. FOSS Desktop GIS – ILWIS 3.4
Developer: ITC (NL) & 52° Nord
ILWIS Image: http://52north.org/joomla/images/stories/52n/admin/ilwis_screenshots/ilwisss.jpg UZH GIS BrownBag 1. Nov 2007
36
2. FOSS Desktop GIS – System for Automated GeoScientific Analysis http://www.saga-gis.uni-goettingen.de/
Developer: Uni Göttingen Physical Geography Group (Germany)
SAGA GIS: http://www.saga-gis.uni-goettingen.de/html/images/bild8.gif UZH GIS BrownBag 1. Nov 2007
37
Outline
1. OpenSource and Free Software 2. OpenSource GIS 3. JUMP GIS and OpenJUMP 4. Why using FOSS as researcher?
UZH GIS BrownBag 1. Nov 2007
38
What is OpenJUMP GIS? • JUMP GIS - developed by VividSolutions Inc. and Refractions Research (Canada) for B.C. and Ontario Ministries (2001/2) focus: data conflation • Java Unified Mapping Platform • in 2003/4 development stopped due to limited funding • group of volunteers* now tries to merge the developments: „OpenJUMP“ as common „core“ (few changes as possible) • users: professional organizations, teaching, research
*) JUMP Pilot Project, www.openjump.org UZH GIS BrownBag 1. Nov 2007
39
Outline
JUMP GIS and OpenJUMP •
Functionality & Features
•
Strengths & Weaknesses
UZH GIS BrownBag 1. Nov 2007
40
3. OpenJUMP – Features (1) Focus: vector data, editing & analysis
p: functionality per plugin, r: read, w:write
Functionality OpenJUMP 1.2 B: . file formats: *.SHPr/w, GMLr/w, DXFr,w,p , MIFrw,p -- tiffr, jpgr, ecwr, MrSIDr,p . database: PostGISr (w,p), Oracler,p, ArcSDEr.p . geometry and topology validation tools . vector overlay . spatial & attribute query . basic attribute calculator To be continued… UZH GIS BrownBag 1. Nov 2007
41
3. OpenJUMP – Features (2) Functionality Continued.. :
p: functionality per plugin,
. basic styling & labeling . printingp (SVG) . WMS & WFSp . scripting (BeanShell, Jythonp) . multi-language support . Java: Win, Linux, OSX . license: GPL
UZH GIS BrownBag 1. Nov 2007
42
3. OpenJUMP – Features (3) . simple user interface . sophisticated modular architecture . developer API (Java) . datastore framework (new, DB read) . plug-in concept => enables rapid prototyping
JUMP 1.1
JTS: Geometry library (OGC SFS, spatial predicates, indexing, ..) UZH GIS BrownBag 1. Nov 2007
43
Outline
JUMP GIS and OpenJUMP •
Functionality & Features
•
Strengths & Weaknesses
UZH GIS BrownBag 1. Nov 2007
44
3. OpenJUMP – Review (1) STRENGTHS: The UZH Gen Group uses JUMP Framework because: • it‘s build on the (robust) geometry library JTS (OGC: SFS) • it‘s written in Java (platform independent, suitable for web services) • it supports standard data formats (shp, GML) • the plugin framework enables: • rapid prototyping • easy customization • it‘s visualization capabilities Community: - help by other users - commercial support available - functionality via plug-ins by others
WebGen: Web Generalization Services, Neun 2007 (Ph.D thesis)
UZH GIS BrownBag 1. Nov 2007
45
3. OpenJUMP – Review (2) WEAKNESSES: TECH: Missing functionality - data loaded in memory (no caching) - no writing to databases (except PostGIS), - no raster algebra, - no built-in projection support (but plugin exists) - simple feature model (problems for advanced projects) - basic visualisation capabilities (no data exploration) •
missing (end-user) documentation (…but on the way)
•
slow core development
•
no development road map
•
user needs to inform oneself
•
user feedback could be better (bugs)
UZH GIS BrownBag 1. Nov 2007
46
Outline
1. OpenSource and Free Software 2. OpenSource GIS 3. JUMP GIS and OpenJUMP 4. Why using FOSS as researcher … ?
UZH GIS BrownBag 1. Nov 2007
47
Why using FOSS? Rationals… - no need to re-invent the wheel - saves money (no license fees) - is scalable (server applications) - best documentation available: the source code - adapt it to your needs - take it with you, and use it wherever you are - open source supports research principles: „experiments must be reproducable“ Drawback: somebody may exploit your developments! BUT.. You can stand on the shoulder of others, and as researcher you are probably paid by the society. So let‘s return something… UZH GIS BrownBag 1. Nov 2007
48
5. Summary You have seen… •
what „OpenSource“/Free Software means
•
GPL misconceptions and myths
•
OS GIS projects
•
A selection of FOS Desktop GIS
•
OpenJUMP GIS Strengths and Weaknesses
•
delivered rationals for using FOSS
UZH GIS BrownBag 1. Nov 2007
49
Thank you for listening! My Question: Is OpenJUMP GIS approaching your Desktop? And your‘s…
UZH GIS BrownBag 1. Nov 2007
50