FOSS4G 2023

Andrea Aime

Open source enthusiast with strong experience in Java development and GIS. Personal interest range from high performance software, managing large data volumes, software testing and quality, spatial data analysis algorithms, map rendering.
Full time open source developer on GeoServer and GeoTools.
Received the Sol Katz's OSGeo award in 2017.


Sessions

06-28
11:30
30min
Adding Quality Assurance to open source projects: experiences from GeoTools, GeoWebCache an GeoServer
Andrea Aime

Working in large open source projects, with several people contributing to the code, can be challenging, especially trying to keep everyone on the same page, and generating code that has enough similarities to allow shared maintenance.

The advent of platforms like GitHub also made it easier for one time contributors to donate small and large bits of code to the platform, generating in the process a fair amout of “review stress” in the project maintainers.

The presentation covers how pull request checks, formatting and static analysis tools have been used to streamline basic checks in the code:

  • Testing the code on a variety of operating systems, Java versions and integrations with data sources before the code can be contributed to the project
  • Enforcing common formatting
  • Adding basic checks with CheckStyle
  • Locating obvious errors, leftover code, basic optimization issues using the Java compiler linting, ErrorProne, PMD and SpotBugs
  • Improving readability of the code as well as enforcing best practices and common approaches with the same tools.
  • Effects on the dynamics of code reviews

The presentation will cover all those aspects, with examples from the author’s experience with the GeoTools, GeoWebCache and GeoServer projects.

State of software
UBT D / N113 - Second Floor
06-28
12:00
30min
GeoServer Feature Frenzy
Andrea Aime, Jody Garnett

GeoServer is a web service for publishing your geospatial data using industry standards for vector, raster and mapping. It powers a number of open source projects like GeoNode and geOrchestra and it is widely used throughout the world by organizations to manage and disseminate data at scale.

What can you do with GeoServer? This visual guide introduces some of the best features of GeoServer, to help you publish geospatial data and make it look great!

GeoServer has grown into an amazing, capable and diverse program - attend this presentation for:

  • A whirl-wind tour of GeoServer and everything it can do today.
  • A visual guide to some of the best features of GeoServer.
  • Our favorite tricks we are proud of!

New to GeoServer - attend this talk and prioritize what you want to look into first. Expert users - attend this talk and see what tricks and optimizations you have been missing out on.

State of software
UBT F / N212 - Floor 3
06-28
14:00
30min
Demystifing OGC APIs with GeoServer: introduction and status of implementation
Andrea Aime

The OGC APIs are a fresh take at doing geo-spatial APIs, based on WEB API concepts and modern formats, including:

  • Small core with basic functionality, extra functionality provided by extensions
  • OpenAPI/RESTful based
  • JSON first, while still allowing to provide data in other formats
  • No mandate to publish schemas for data
  • Improved support for data tiles (e.g., vector tiles)
  • Specialized APIs in addition to general ones (e.g., DAPA vs OGC API - Processes)
  • Full blown services, building blocks, and ease of extensibility

This presentation will provide an introduction to various OGC APIs and extensions, such as Features, Styles, Maps and Tiles, STAC and CQL2 filtering.
Some have reached a final release, some are in draft: we will discuss their trajectory towards official status, as well as how good the GeoServer implementation is tracking them, and show examples based on the GeoServer HTML representation of the various resources.

Open Standard
UBT D / N112 - Second Floor
06-28
14:30
30min
State of GeoServer
Andrea Aime, Jody Garnett

GeoServer is a web service for publishing your geospatial data using industry standards for vector, raster and mapping. Choose additional extensions to process data (either in batch or on the fly) and catalog records.

GeoServer is widely used by organizations throughout the world to manage, disseminate and analyze data at scale. GeoServer web services power a number of open source projects like GeoNode and geOrchestra.

This presentation provides an update on our community as well as reviews of the new and noteworthy features for the latest releases. In particular, we will showcase new features landed in 2.22 and 2.23, as well as a preview of what we have in store for 2.24 (to be released in September 2023).

Attend this talk for a cheerful update on what is happening with this popular OSGeo project, whether you are an expert user, a developer, or simply curious what GeoServer can do for you.

State of software
Outdoor Stage
06-28
16:30
30min
Processing and publishing Maritime AIS data with GeoServer and Databricks in Azure
Andrea Aime

The amount of data we have to process and publish keeps growing every day, fortunately, the infrastructure, technologies, and methodologies to handle such streams of data keep improving and maturing. GeoServer is an Open Source web service for publishing your geospatial data using industry standards for vector, raster, and mapping. It powers a number of open-source projects like GeoNode and geOrchestra and it is widely used throughout the world by organizations to manage and disseminate data at scale. We integrated GeoServer with some well-known big data technologies like Kafka and Databricks, and deployed the systems in Azure cloud, to handle use cases that required near-realtime displaying of the latest AIS received data on a map as well background batch processing of historical Maritime AIS data.

This presentation will describe the architecture put in place, and the challenges that GeoSolutions had to overcome to publish big data through GeoServer OGC services (WMS, WFS, and WPS), finding the correct balance that maximized ingestion performance and visualization performance. We had to integrate with a streaming processing platform that took care of most of the processing and storing of the data in an Azure data lake that allows GeoServer to efficiently query for the latest available features, respecting all the authorization policies that were put in place. A few custom GeoServer extensions were implemented to handle the authorization complexity, the advanced styling needs, and big data integration needs.

Use cases & applications
Drini
06-29
14:00
30min
Scaling GeoServer in the cloud: clustering state of the art
Andrea Aime

GeoServer deployments in the cloud and kubernetes are becoming the norm, while the amount of data published is also growing, both in terms of layers and size of data. As a result, the need for scaling up is becoming more and more common.

This presentation covers GeoServer clustering approaches, comparing the available options and their suitability to different environments. We will cover:
* Managing the GeoServer configuration, stable configuration with planned upgrades versus dynamic runtime changes.
* Deployment options (monolithic, separate tiling, microservice oriented)
* Dynamic configuration clustering with JMS, external database storage, and distributed memory.

Attend this presentation to get an update on GeoServer cloud and clustering options, and pick the option that is the best match for your specific use case.

State of software
Lumbardhi
06-29
16:00
30min
Styling Natural Earth with GeoServer and GeoCSS
Andrea Aime

Natural Earth is a public domain map dataset available at 1:10m, 1:50m, and 1:110 million scales. Featuring tightly integrated vector and raster data, with Natural Earth one can build a variety of visually pleasing, well-crafted maps with cartography or GIS software.

GeoServer GeoCSS is a CSS inspired language allowing you to build maps without consuming fingertips in the process, while providing all the same abilities as SLD.

In this presentation we’ll show how we have built a world political map and a world geographic map based on Natural Earth, using CSS, and shared the results on GitHub. We’ll share with you how simple, compact styles can be used to prepare a multiscale map, including:
* Leveraging CSS cascading.
* Building styles that respond to scales in ways that go beyond simple scale dependencies.
* Various types of labeling tricks (conflict resolution and label priority, controlling label density, label placement, typography, labels in various scripts, label shields and more).
* Quickly controlling colors with LessCSS inspired functions.
* Building symbology using GeoServer large set of well known marks.

Join this presentation for a relaxing introduction to simple and informative maps.

Use cases & applications
Mirusha
06-29
16:30
30min
GeoServer used in fun and interesting ways
Andrea Aime, Jody Garnett

GeoServer is the start of so many great open source success stories.

This talk introduces the core GeoServer application and explores the ecosystem that has developed around this beloved OSGeo application. Our presentation draws on the GeoServer ecosystem for use-cases and examples of how the application has been used successfully by a wide range of organizations.

Each use-case highlights a capability of GeoServer providing an overview of the technology drawn from practical examples.

  • Andrea Amie is on hand to share success stories highlighting GeoServer use in managing vulnerable ecosystems, agriculture information management, and marine data management.
  • Jody Garnett will look at how GeoServer technology powers cloud services
  • Gabriel will look at am amazing remixes for Cloud Native GeoServer
  • GeoServer technology powering the OSGeo community, including GeoNode, geOrchestra
  • A showcase of examples collected from our user list

Attend this talk to learn what GeoServer is good for out-of-the-box, and for inspiration on what is possible using GeoServer and the FOSS4G community.

Use cases & applications
Mirusha
06-30
11:00
30min
Serving earth observation data with GeoServer: COG, STAC, OpenSearch and more...
Andrea Aime

Never before have we had such a rich collection of satellite imagery available to both companies and the general public. Between missions such as Landsat 8 and Sentinels and the explosion of cubesats, as well as the free availability of worldwide data from the European Copernicus program and from Drones, a veritable flood of data is made available for everyday usage.
Managing, locating and displaying such a large volume of satellite images can be challenging. Join this presentation to learn how GeoServer can help with with that job, with real world examples, including:

  • Indexing and locating images using The OpenSearch for EO and STAC protocols
  • Managing large volumes of satellite images, in an efficient and cost effective way, using Cloud Optimized GeoTIFFs.
  • Visualize mosaics of images, creating composite with the right set of views (filtering), in the desired stacking order (color on top, most recent on top, less cloudy on top, your choice)
  • Perform both small and large extractions of imagery using the WCS and WPS protocols
  • Generate and view time based animations of the above mosaics, in a period of interest
  • Perform band algebra operations using Jiffle

Attend this talk to get a good update on the latest GeoServer capabilities in the Earth Observation field.

Use cases & applications
UBT F / N212 - Floor 3
06-30
15:00
30min
Mastering Security with GeoServer, GeoFence, and OpenID
Andrea Aime, Alessio Fabiani

The presentation will provide a comprehensive introduction to GeoServer's own authentication and authorization subsystems. The authentication part will cover the various supported authentication protocols (e.g. basic/digest authentication, CAS, OAuth2) and identity providers (such as local config files, database tables, and LDAP servers). It will also cover the recent improvements implemented with the OpenID integrations and the refreshed Keycloak integration.

It will explain how to combine various authentication mechanisms in a single comprehensive authentication tool, as well as provide examples of custom authentication plugins for GeoServer, integrating it in a home-grown security architecture. We’ll then move on to authorization, describing the GeoServer pluggable authorization mechanism, and comparing it with an external proxy-based solution. We will explain the default service and data security system, reviewing its benefits and limitations.

Finally, we’ll explore the advanced authorization provider, GeoFence. The different levels of integration with GeoServer will be presented, from the simple and seamless direct integration to the more sophisticated external setup. Finally, we’ll explore GeoFence’s powerful authorization rules using:

  • The current user and its roles.
  • The OGC services, workspace, layer, and layer group.
  • CQL read and write filters.
  • Attribute selection.
  • Cropping raster and vector data to areas of interest.
State of software
UBT C / N109 - Second Floor