We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

State of GRASS GIS 2023

00:00

Formal Metadata

Title
State of GRASS GIS 2023
Title of Series
Number of Parts
266
Author
License
CC Attribution 3.0 Germany:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
FOSS4G 2023 Prizren This talk gives an overview of the current state of the GRASS GIS project for both users and developers. Latest version of GRASS includes even more tools parallelized using OpenMP to speed up massive data processing. The graphical user interface is changing as the single-window layout matured and is becoming the number one choice and a default setting. This adds to a quicker startup without a need for a welcome screen and streamlined data management. The code quality of C and C++ code improved significantly in the last year, the code compiles with strict compiler settings and we are heading towards pedantic compliance. Last but not least, this summer GRASS GIS celebrates its 40th birthday!
Goodness of fitPresentation of a groupGrass (card game)State of matterSlide ruleLecture/ConferenceMeeting/Interview
Programmer (hardware)Lecture/Conference
Programmer (hardware)Grass (card game)Faculty (division)Civil engineeringGeomaticsSpacetimeFamilyProjective planeGrass (card game)Moment (mathematics)Slide ruleVideo gameMereologyLecture/Conference
GradientGrass (card game)OscillationMathematical analysisVisualization (computer graphics)Data managementSuite (music)Asynchronous Transfer ModeInclusion mapSigma-algebraPlanningPhysical systemComputer-generated imageryProcess modelingGrass (card game)Medical imagingSlide ruleData managementFreewareVisualization (computer graphics)Revision controlMathematical analysisPhysical systemSpacetimeData modelSoftwareOpen sourceImage processingLecture/Conference
Data managementVisualization (computer graphics)PlanningPhysical systemMathematical analysisGrass (card game)Suite (music)Computer-generated imageryProcess modelingGrass (card game)Software developerRepository (publishing)Analytic continuationLecture/Conference
Grass (card game)Slide ruleSoftware developerRepository (publishing)Revision controlFlow separationLecture/Conference
Series (mathematics)SoftwareSystems engineeringComputer networkMathematical analysisVector spaceSuite (music)Level (video gaming)Slide ruleGrass (card game)Core dumpLecture/Conference
Revision controlNumbering schemeStability theoryUser interfaceSingle-precision floating-point formatDefault (computer science)Level (video gaming)Grass (card game)Slide ruleRevision controlLecture/Conference
Stability theoryUser interfaceSingle-precision floating-point formatDefault (computer science)Numbering schemeRevision controlMereologyRevision controlSound effectMathematicsLecture/Conference
Revision controlGrass (card game)Software developerPhase transitionLecture/Conference
Revision controlNumbering schemeStability theoryDefault (computer science)Single-precision floating-point formatUser interfaceSlide ruleGrass (card game)Revision controlMathematicsLevel (video gaming)Lecture/Conference
Grass (card game)Revision controlElectronic mailing listGrass (card game)Row (database)MathematicsSlide ruleLecture/Conference
Skeleton (computer programming)Grass (card game)Revision controlCentralizer and normalizerSkeleton (computer programming)Line (geometry)Slide ruleModule (mathematics)Lecture/Conference
Price indexPairwise comparisonFlagSubject indexingLine (geometry)Module (mathematics)Different (Kate Ryan album)Type theorySlide rulePrice indexLecture/Conference
Endliche ModelltheorieInformationScripting languageGrass (card game)Link (knot theory)Connectivity (graph theory)Endliche ModelltheorieGrass (card game)Process (computing)Projective planeSlide ruleLecture/Conference
Library (computing)Interactive televisionVisualization (computer graphics)DisintegrationSeries (mathematics)Raster graphicsVector spaceStability theoryGrass (card game)INTEGRALLaptopGrass (card game)Revision controlStability theoryVector spaceCodeProjective planeIntegrated development environmentRaster graphicsSeries (mathematics)Level (video gaming)SummierbarkeitLecture/Conference
Library (computing)Visualization (computer graphics)Interactive televisionDisintegrationRaster graphicsVector spaceSeries (mathematics)Stability theoryLink (knot theory)Meta elementGrass (card game)Slide ruleSource codeGrass (card game)File formatLibrary (computing)Vector spaceReading (process)Lecture/Conference
Link (knot theory)Meta elementRaster graphicsGrass (card game)Computer fileFile formatSource codeFunctional (mathematics)Multiplication signProcess (computing)Reading (process)Lecture/Conference
Grass (card game)Raster graphicsLink (knot theory)File formatSoftware maintenanceStreamlines, streaklines, and pathlinesCodeMultiplication signData compressionCompilerGrass (card game)Slide ruleSoftware maintenanceProcedural programmingForcing (mathematics)Lecture/Conference
Grass (card game)Grass (card game)Slide ruleParallel portProjective planeLecture/Conference
Correlation and dependenceCellular automatonParallel portDigital filterBenchmarkCore dumpScripting languageConnectivity (graph theory)Patch (Unix)Module (mathematics)Parallel computingTask (computing)MehrprozessorsystemNumbering schemeGrass (card game)Parallel portSlide ruleLecture/Conference
Grass (card game)Grass (card game)Revision controlMathematicsInversion (music)Musical ensembleTouchscreenLecture/Conference
Grass (card game)TouchscreenSlide ruleGrass (card game)MathematicsLecture/Conference
Grass (card game)Set (mathematics)System callProjective planeGrass (card game)Demo (music)Server (computing)Computer engineeringGraphical user interfaceAsynchronous Transfer ModeTerm (mathematics)Uniform resource locatorPower (physics)Group actionMathematicsProcedural programmingMereologyLecture/Conference
MereologyMultiplicationGrass (card game)Single-precision floating-point formatUser interfaceGraphical user interfaceRevision controlLecture/Conference
Computing platformGUI widgetGraphical user interfaceDefault (computer science)Physical systemUser interfaceMultiplication signSlide ruleVideo game consoleDefault (computer science)Single-precision floating-point formatGrass (card game)User interfaceRevision controlGraphical user interfaceProjective planeMathematicsLecture/Conference
Discrete element methodRandom numberSimulationMultiplicationParallel portRaster graphicsPlot (narrative)Thread (computing)Server (computing)Library (computing)Wrapper (data mining)Module (mathematics)Library catalogMachine codeCore dumpGrass (card game)Grass (card game)Slide ruleProjective planeWeb pageExtension (kinesiology)Raster graphicsSpacetimeCuboidRandomizationSimulationService (economics)Random walkSoftware frameworkMultiplicationSeries (mathematics)Similarity (geometry)Thread (computing)PlotterCore dumpSingle-precision floating-point formatLecture/Conference
Machine codeGrass (card game)Core dumpMusical ensembleTranslation (relic)WebsiteProjective planeHypermediaInternet forumGrass (card game)Web 2.0Lecture/Conference
Process (computing)Software developerRegular graphGrass (card game)Event horizonSimilarity (geometry)Projective planeGrass (card game)Slide ruleLattice (order)Multiplication signSoftware bugSelf-organizationComputer programmingStudent's t-testOpen sourceEntropiecodierungMereologyCodeGoogolLecture/Conference
Compilation albumFaculty (division)Civil engineeringGeomaticsGrass (card game)Self-organizationComputer-generated imageryWindowSingle-precision floating-point formatData conversionSlide ruleUser interfaceSelf-organizationSingle-precision floating-point formatEvent horizonGrass (card game)Medical imagingTranslation (relic)Arithmetic progressionEndliche ModelltheorieFunctional (mathematics)Lecture/Conference
Endliche ModelltheorieGrass (card game)Endliche ModelltheorieLecture/ConferenceComputer animationJSONUML
Transcript: English(auto-generated)
okay so good morning ladies and gentlemen I would like to present here the state of grass on behalf of grass community let me also thank to my grass
colleagues and friends who contributed to this presentation so yeah next slide I will try with the mouse I can just switch or how can I can switch or you will do it for me I don't see the mouse doesn't work yeah but I'm with
that and doesn't move at all so if I can just ask you to press the space and just okay great so go back please thanks a lot okay so my name is Martin Landa
I am working at the Department of Geomatics Czech Technical University in Prague I started to use grass and to contribute to grass in 2003 so it means
like 20 years ago which is half of my life so you can imagine that I mean grass is like part of my heart it's half of my life I was just helping to grass to be to be better and it's a special moment for me here to go to to
present grass here you can see from my contribution that in 2017 I switched to another project which is my family so you can easily see that my contribution to grass went down so this moment is like nostalgic for me that I can
present grass here and it's a honor and pleasure for me so please next slide so what what I will go to present here first of all I would like to present grass what it is for newcomers then I will present a new features in grass
H3 which is like a newest version of grass I will also highlight community contribution I would like to share with you I mean the approaches the ways how you can be involved in grass and at the end I will I will present I mean how
we celebrated to grass 40th this year my colleague Marco his he was presenting that the QGIS celebrated 20 years last year so we we celebrated
40 years this year which is which is quite extraordinary so please next slide so what is grass grass stands for geographic resource and analyzes support system it's open source and free software GIS used for used for
geospatial data management analyzes image processing spatial data modeling and visualization it's very powerful in geospatial data processing it was originally developed developed in early 80s by by the US Army and in 2006
grass was was a founding member of always chill and as I mentioned this year we are celebrating celebrating 40 years of continuous geospatial
development if you just visit our github repository maybe you could be disappointed because I mean if you just search or look at the history the history like the first comet is like in 2000-2003 or something like that but
I mean there is a separated github repository which is called Gala grass legacy which really contains the history till I think grass 3 is the
first version what which which which is included so if you are really interested about grass history we have we have separated github repository which contains almost full history of grass development so please next slide
so grass is really really powerful as I am mentioned in geospatial data analyzes it contains more than 400 tools which which allows you to
process your data there is also I mean beside beside of of this core tools there is more than 400 user-created tools which which are called at once so
I mean every everyone can contribute to grass we are this at once so please next slide so about the road map last year in my colleague Marcus Nettler was presenting the version 8.2 so it's pleasure for me here to present the new
version which was basically actually released a few days ago one week ago grass 8.3 which brings a nice cool features I am going to present in the
next slides I just wanted or I would like you to describe how how we how we are versioning grass we are using some semantic versioning approach so the version contains three parts the major parts which which brings new features
and possibly back backward in compatible changes the minor version which brings new features and if it fixes and the micro version which brings only fake fixes we change the way how how we are using the old and even
minor version I mean till grass h2 we we we distinct between odd and even minor versions in the way that I mean even sorry odd versions were used
for development phases and even versions were used for release so it means that I mean if you just check the road map there was grass 8 and the
next release was grass h2 we changed that with starting with West 8.3 we are using every every manner version for release so this year we released 8.3 for the next year we are planning to release 8.4 and so on so this changed
so please don't be confused from that so please next slide so I was mentioning that there is there is a new grass version which was really is just one week ago 8.3 so let me present just selected new features I
mean for complete record just go to the to the to the github and check the news which contains I mean full list full list of changes so please next slide so first first tool I would like to present is the Voronoi which is
a grass to and I mean in a in a grass 8.3 version it's it allows to create a skeletons and centralized centralized center lines this improvement was done
please next slide also also the module which computes a different type of vegetation in indices was to was was improved this tool is called I do to be I there is support for there's a new support for soil line slopes done
by Andrei Pechek next slide please there is or there are also plenty improvements in graphical modeler which is one of graphical user
components the need this this new feature I am going to present here the grass grass graphical model allows to export your model into the W PI WPS
process so you can easily like convert your grass model into the WPS process provided by the WP PI WPS project so please next slide there is also a
Jupyter notebook integration in a grass in the grass environment it was introduced in version 8 to last year thanks to the Google Google some of code project grass 8.3 comes with various stability fixes and there is
also like a new new feature which is called serious map which allows to use in the notebooks animated vector or raster series it's still hanging the poor request so so this is still still some work is ongoing so please next
slide there is also faster support for external data sources I mean grass is using its own restaurant vector format but beside that I mean you can
you can easily read external data formats in grass thanks to the GDAL library so you need your you don't need to import your data into the grass native format you can you can just read them you can just read the files or the the external data sources directly this dysfunctionality was
significantly improved that I mean that is this reading process of external data sources was improved like five times it's faster for workflows were just reading like portion of the data the the improvement can be can be I mean
really really like significant more than 20 times for example so please next slide grass 8.3 also comes with improvements related to the to the
source code maintenance we fixed a lot of compiler issues we also reformatted C and C++ source code using a C lang formatting procedure and we also improve the CI in this regard so there is also a force to paralyze a lot of
grass tools so it's like ongoing long-term project please next slide I
will present a new tools or tools which were which were which comes newly with parallelization support in grass 8.3 there are five three three are written in C we use OpenMP for for I mean to support parallelization and
there are there are two Python tools which were also paralyzed so please next slide but I mean beside the side of these five tools which were which were presenting in in in the previous slide there is a bunch or number of
tools which are already paralyzed including a grass Python API yeah but a better graphical user experience I mean it's an important topic for for grass
of course in version grass 8 we did us really like a huge change because I mean for thousands of years maybe from starting starting with version grass 5 there was there was a welcome screen and it was obstacle for
many newcomers so after really long discussion we decided we decided to change this concept so in grass 8 there is no no welcome screen anymore please
next slide next slide so no more so how grass starts from starting from grass starting with grass 8 grass just opens like a demo project and what is important we are trying to navigate first first or new comer to do next
steps because I mean what is important that the user understands that this demo project is not you shouldn't be used for real work you should create a new project import your data and so and continue I am using here a term project
but I mean in the grass terminology we are calling or we are using a term grass location so project is not perfectly correct but maybe it's more understandable for for I mean newcomers to grass so we changed this
concept completely which was I mean really huge change for grass grass starting procedure in a graphical user mode but of course I mean the grass power still stands I mean in the command line that you are using grass
on the server like a computational engine but also we are we are taking care about you users who want to use a graphical user interface I mean both groups of the users are very important for us so with grass 8-3
oh ok I forgot to mention this part beside of like changing how grass is starting we also I mean traditionally grass GUIs multi window layout based so
you start the GUI and you just multi windows pop-ups we also introduce support for single window layout and in version 8-3 this year or this year of the new version I am presenting here this single window layout is by
default so if you just start the grass first time you will get this single single window layout so please next slide also we did a lot of improvements in this single single window GUI or here on this slide there
is like a grass mini project I will be speaking about that in the next slides so so you can see that that I mean we change we change the layout of the console pane and so on them worries changes and please next slide I need
to speed up we also improved dark team support so if you like to to use dark team grass supporting that please next slide and here I would like to highlight a contribution from the community I mean there are as I
mentioned our core tools but there are also tools which were created by the grass community we call them at once like some something like extensions so let me present a few of them there is a new at on which generates a single elevation value for water bodies based on lighter data done by Anna
petra showa please next slide random work simulation a tool which which allows you to or which enables you to generate to them to the random walk with small people parallel walkers and so on please next slide there's also
two which allows you to plot or draw box plots for rasters which are registered in the space time raster data set this is this is this is like really important for grass grass is very powerful when you are working with
space-time data we have like a framework of multiple tools which which allows you to work with a space-time data sees effectively there is another another at on which which allows you to access a threats data service in grass
next slide yeah so how to be involved I mean our community is open for new contributions of course please next slide we are on github so I mean if
you are familiar with github our our project is working in the similar way as other projects you can create the issues pull request everything is publicly visible you can you can discuss on github just get this discuss
pages always pull requests are welcome as my colleague Markham mentioned we like issues but we love pull requests of course so we also changed the way
how we are supporting the like grass translation we migrated to OS Joe web flight so this is I mean very important if you have if you want to contribute to grass please try to improve documentation tutorials and so on
this is like very important for grass that that we have we have good documentation which can be used and which will be usable for newcomers you can also contribute by material on social media and also answered the
question on the GIS forums and so on so this is like nothing nothing special comparable to other project we are working in in a similar ways as other projects please yeah sponsoring this is also big issue for grass we we
love sponsors of course you can contribute by your time you can contribute by by money of course organizations can contribute as a regular sponsors and so on so we are of course open open for for this kind of
supporters as I mean other open source GIS projects of course so please next slide yeah we have a special program for grant for students I mean there is a Google Summer of Code project we we are trying to to to
participate but I mean what is important that that we would like to support students for I mean longer time that they can maybe finish something what was not completely finished in Google Summer of Code project and so on so we have a special special program for supporting
students it's also I mean it includes actual coding but also I mean back fixing improving documentation and so on so please next slide yeah we celebrated grass 40 we did our best we met in Prague there was a there was a
grass grass community meeting so we enjoyed a lot we celebrated a lot as you can see please next slide so we met we met basically one month ago or
three weeks ago in Prague and yeah we spent five nice days just doing what we like I can see few few of participants here so I hope that you had the nice time as me so please next slide so as you can see beside
parting yeah we did a lot of work next slide party yes and we need to thanks our sponsors of course this because without of damage well it wouldn't be
possible to to organize such great event so thanks to OS Joe thanks to Fosgus first two thanks to OS Joe Japan and very importantly many in individuals so and also thank you to Czech Technical University for providing
venue next slide please and I will just show some outcomes please next slide so we released a three next slide please we did some progress in translation to see make grass is using auto tools so we are trying to
move to see make we also move a duker docker images to the official OS Joe docker docker hub organization please next slide yeah we did improvement in graphical modeler so it now it's integrated into the single layout window and we also did the first step to convert our manual pages in HTML to
mark down to like to easy that in be improved to or it will be easier to maintain maintained documentation also for for outside contributors so please
and also my colleague added a new export functionality to grass GIS modeler related to academia