Found 2 bookmarks
Newest
The Modern Geospatial Data Stack: Trends, Tools, and What They Mean for You - Matt Forrest
The Modern Geospatial Data Stack: Trends, Tools, and What They Mean for You - Matt Forrest
The geospatial technology landscape is changing fast. What used to be a world of shapefiles, desktop software, and siloed workflows is now becoming cloud-native, AI-driven, and analytics-focused. This shift isn’t just technical—it’s reshaping how geospatial professionals build, analyze, and share data. In this post, I’ll break down the key trends shaping the modern geospatial data
The Modern Geospatial Data Stack: Trends, Tools, and What They Mean for You
In this post, I’ll break down the key trends shaping the modern geospatial data stack, highlight the tools and platforms that are leading innovation, and explain what this means for practitioners, teams, and organizations.
File Formats and Catalogs: The Foundation of Cloud-Native Geospatial
Modern analytics workflows are no longer small, local projects—they’re massive, distributed, and data-heavy. That’s why cloud-native file formats and data catalogs are at the center of the stack.
Apache Iceberg and other table formats are becoming the backbone of large-scale geospatial data management.
Cloud-optimized formats (like GeoParquet and COGs) make spatial data portable, efficient, and accessible.
Specialized systems like Earthmover are also adding focus for specific file types, in this case climate data
What this means for you: If you’re still relying on ad hoc file storage, you’re missing out on performance and scalability. Learning how to use catalogs like Iceberg lets you fully leverage file-level optimizations, versioning, and schema evolution—critical for handling large and evolving geospatial datasets.
Data Processing: Beyond the Spatial Join
For years, the hallmark of a spatial database was the ability to run a point-in-polygon query. But in 2025, that capability has been commoditized. Most OLAP systems and modern databases can handle these joins at scale—even without compute layers optimized for geospatial.
The real differentiator now is advanced geospatial processing: Zonal statistics for climate and land-use analysis Mobility data pipelines for transportation and urban planning Feature engineering for AI and machine learning workflows
Platforms like Wherobots and Coiled are focusing directly on these workloads, while Apache Spark has begun supporting vector data types. Traditional relational databases still play a role—especially as AI applications demand fast transactional access—but the future belongs to systems that optimize for large analytical queries across massive datasets.
👉 What this means for you: Stop thinking of “point-in-polygon” as the benchmark. Systems that can go deeper—into advanced feature generation and distributed geospatial computation—will define the next generation of spatial analytics.
Transformation and Orchestration: Moving Beyond Simple Scripts
In the past, geospatial data pipelines often relied on one-off Python scripts. Today, that approach simply doesn’t scale.
Specialized spatial ELT tools like Seer AI and BigGeo are emerging to handle geospatial-specific transformations.
Orchestration platforms such as Apache Airflow and Astronomer are essential for managing dependencies, scheduling, and ensuring upstream data integrity.
👉 What this means for you: Don’t think of orchestration as overhead—it’s how you guarantee reliable and reproducible data pipelines. If your team is serious about analytics, orchestration is no longer optional.
Analytical Tools: From Niche to End-to-End
The analytics ecosystem for geospatial continues to expand, giving users more choice than ever. Specialized platforms: Foursquare, Dekart, Superset, Preset End-to-end systems: CARTO and Fused, which combine geospatial with AI, data management, and visualization 👉 What this means for you: The decision is no longer “which GIS platform do I use?” Instead, it’s about picking the right tool for the specific stage of your workflow—sometimes a lightweight visualizer, sometimes a comprehensive enterprise solution.
GIS: The Rise of Web-Native Platforms Web GIS is where most of the visible innovation is happening. Platforms like Felt and Atlas are reimagining the GIS experience: collaborative, browser-based, and designed for simplicity without losing power. 👉 What this means for you: Expect the center of gravity in GIS to continue shifting from desktop to the web. Professionals who adapt to these tools will be better positioned for collaborative, cloud-based work environments.
AI: A New Category of Geospatial Tools One of the most exciting areas is the emergence of AI-native geospatial platforms. These tools are building with machine learning and agentic AI in mind from the start. Vertical-focused AI: Aino (planning), Contour (cities) GIS-focused AI: Bunting Labs, optimizing traditional GIS workloads with AI Agentic AI for geospatial: Klarety and Monarcha, building agents as spatial tools 👉 What this means for you: AI isn’t just an add-on anymore—it’s a defining capability. Expect to see AI-powered agents and models become critical in workflows from automated labeling to decision support.
Python Ecosystem: Expanding AI and Spatial ML Python remains the glue of modern geospatial, and the ecosystem keeps growing: TorchGeo has matured into an independent framework for spatial deep learning. GeoAI from Dr. Qiusheng Wu provides new capabilities for applying ML to spatial data. 👉 What this means for you: If you’re serious about geospatial and AI, Python is unavoidable. The tools are expanding, and open-source continues to lead the way.
Final Takeaway: Where the Modern Geospatial Stack is Headed The geospatial data stack is no longer about static maps or one-off analyses. It’s about: Scalable architectures (Iceberg, GeoParquet, COGs) Advanced processing (beyond spatial joins) Reliable pipelines (orchestration + transformation) AI-native design (feature engineering, agents, ML-ready workflows) The modern stack is maturing into a foundation for spatial intelligence at scale. If you’re a GIS professional, data engineer, or analyst, now is the time to expand your toolkit—because the organizations that master this new stack will define the future of geospatial.
·forrest.nyc·
The Modern Geospatial Data Stack: Trends, Tools, and What They Mean for You - Matt Forrest
Smarter Single Page Application with a REST API
Smarter Single Page Application with a REST API
How can you build a Single Page Application with a REST API that doesn't have a ton of business logic in the client? Use Hypermedia!
When the Browser is the client consuming HTML, it understands how to render HTML. HTML has a specification. The browser understands how to handle a <form> tag or a <button>. It was driven by the HTML at runtime.
How can you build a smarter Single Page Application with a REST API? The concepts have been since the beginning of the web, yet have somehow lost their way in modern REST API that drives a Single Page Application or Mobile Applications. Here’s how to guide clients based on state by moving more information from design time to runtime.
State If you’re developing more than a CRUD application, you’re likely going to be driven by the state of the system. Apps that have Task Based UIs (hint: go read my post on Decomposing CRUD to Task Based UIs) are guiding users down a path of actions they can perform based on the state of the system. The example throughout this post is the concept of a Product in a warehouse. If we have a tasks that let’s someone mark a Product as no longer being available for sale or it being available for sale, these tasks can be driven by the state of the Product. If the given UI task is “Mark as Available” then the Product must be currently unavailable and we have a quantity on hand that’s greater than zero
History of Clients Taking a step back a bit, web apps were developed initially with just plain HTML (over 20 years ago for me). In its most basic form, a static HTML page contained a <form> that the browser rendered for the user to fill out and submit. The form’s action would point to a URI usually to a script, often written in Perl, in the cgi-bin folder on the webserver. The script would take the form data (sent via POST from the browser) and insert it into a database, send an email, or whatever the required behavior was. As web apps progressed, instead of the HTML being in a static file, it was dynamically created by the server. But it was still just plain HTML. The browser was the client. HTML was the content it’s consuming.
Modern Clients As web apps progressed with AJAX (XMLHttpRequest) instead of using HTML forms, Javascript was used to send the HTTP request. The browsers turned more into the Host of the application which was written in Javascript. Now, Javascript is the client. JSON is the content it’s consuming.
Runtime vs Design Time When the Browser is the client consuming HTML, it understands how to render HTML. HTML has a specification. The browser understands how to handle a <form> tag or a <button>. It was driven by the HTML at runtime.
In modern SPAs consuming JSON, the data itself is unstructured. Each client has to be created uniquely based on the content it receives. This has to be developed at design time when creating the javascript client.
When developing a SPA, you may leverage something like OpenAPI to generate code to use in the SPA/clients to make the HTTP calls to the server. But you must understand as a developer, at design time (when developing) when to make a call to the server.
To use my earlier example of making a product available for sale, if you were developing a server-side rendered HTML web app, you wouldn’t return the form apart of the HTML if the product couldn’t be made available. You would do this because on the server you have the state of the product (fetched from the database). If you’re creating a SPA, you’re likely putting that same logic in your client so you can conditionally show UI elements. It wouldn’t be a great experience for the user to be able to perform an action, then see an error message because the server/api threw a 400 because the product is not in a state to allow it to be available.
Hypermedia Hypermedia is what is used in HTML to tell the Browser what it can do. As I mentioned earlier, a <form> is a hypermedia control.
HTTP APIs The vast majority of modern HTTP APIs serving JSON, do not provide any information in the content (JSON) about what actions or other resources the consuming client (SPA) can take. Meaning, we provide no information at runtime. All of that has to be figured out at design time.
You will still need to know (via OpenAPI) at design time, all the information about the routes you will be calling, and their results, however, you can now have the server return JSON that can guide the client based on state.
·codeopinion.com·
Smarter Single Page Application with a REST API