No Clocks

No Clocks

4143 bookmarks
Newest
Fast contour lines using plain PostGIS
Fast contour lines using plain PostGIS
There’s a bunch of different ways to generate contour lines [1] from scatter data, each of them based on different interpolation algorithms. Like KNN [2], IDW [3] or kriging-flavoured methods [4]. (image from Wikipedia)
·abelvm.github.io·
Fast contour lines using plain PostGIS
Geospatial AI – AI Agents – Developer Tools – Google Maps Platform
Geospatial AI – AI Agents – Developer Tools – Google Maps Platform
Build smarter, faster and with more confidence using AI-powered products and tools from Google Maps Platform, grounded in Google’s fresh, real-world data and cutting-edge technology.
·mapsplatform.google.com·
Geospatial AI – AI Agents – Developer Tools – Google Maps Platform
Model-Based Geostatistics
Model-Based Geostatistics
Modern model-based geostatistics for point-referenced data. This package provides a simple interface to run spatial machine learning models and geostatistical models that estimate a continuous (raster) surface from point-referenced outcomes and, optionally, a set of raster covariates. The package also includes functions to summarize raster outcomes by (polygon) region while preserving uncertainty.
·henryspatialanalysis.github.io·
Model-Based Geostatistics
r-lib/mirai | DeepWiki
r-lib/mirai | DeepWiki
mirai is a minimalist async evaluation framework for R that enables asynchronous, parallel, and distributed computation. This page introduces the package's purpose, hub architecture, key capabilities
·deepwiki.com·
r-lib/mirai | DeepWiki
Targeting database tables in workflows
Targeting database tables in workflows
My work on the Department of Ecology’s Safety of Oil Transportation Act risk model has been an opportunity for me to explore some of the newer tools available in R for reproducible workflows. Taking the time to learn and implement these tools has been incredibly helpful, both because the model requirements were still being nailed down while I was developing it (and thus I needed to be able to easily re-run things and identify changes to results) and because the sheer volume of data requires we use parallel processing approaches in order to achieve feasible run times. I identified the targets package as an excellent tool to achieve both of these requirements, as it not only provides a framework for running and tracking analysis pipelines (which I use for ETL procedures and scheduling model runs) but also allows us to seamlessly switch to parallel approaches using future and backends such as future.callr or future.batchtools.
Where the “package 1”, “package 2”, etc. folders are actually be git submodules pointing to separate repositories. The renv folder defines the package versions used by the workflows and the depends/imports/suggests used by the various packages, ensuring consistent behavior across the workflows. Technically you don’t need to have the submodules at all (you could just install the packages in the project environment using renv::install() and the repository url) but I found myself developing the packages and workflows side-by-side, so it was convenient to have everything in one place and tell renv to install from the package folders (e.g., renv::install("./package 1")).
Pipelines run by targets create a variety of intermediate files that capture target outputs and identify their completeness and currentness. This works fine for smaller projects, but we store model inputs and outputs in a series of Microsoft SQL Server databases. Furthermore, the organizational structure of the database can be pretty different from how we would organize data if we were able to maintain R objects, so some of our targets need to write multiple tables to the database. This presents a problem, since targets needs to check the return value of each target and produce a hash. My solution was to create a function that generates a checksum of a database table (or a list of checksums for a list of tables):
·hydroecology.net·
Targeting database tables in workflows
Overview | Uncloud
Overview | Uncloud
Uncloud makes self-hosting web applications across multiple machines in production dead simple.
·uncloud.run·
Overview | Uncloud
PRQL
PRQL
PRQL is a modern language for transforming data
·prql-lang.org·
PRQL
Muimsd
Muimsd
·muimsd.github.io·
Muimsd
RFC 2119: Key words for use in RFCs to Indicate Requirement Levels
RFC 2119: Key words for use in RFCs to Indicate Requirement Levels
In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.
·datatracker.ietf.org·
RFC 2119: Key words for use in RFCs to Indicate Requirement Levels
Options pattern - .NET
Options pattern - .NET
Learn the options pattern to represent groups of related settings in .NET apps. The options pattern uses classes to provide strongly-typed access to settings.
·learn.microsoft.com·
Options pattern - .NET
Configuration - .NET
Configuration - .NET
Learn how to use the Configuration API to configure .NET applications. Explore various inbuilt configuration providers.
·learn.microsoft.com·
Configuration - .NET
Plugins - MapLibre GL JS
Plugins - MapLibre GL JS
MapLibre GL JS is a TypeScript library that uses WebGL to render interactive maps from vector tiles in a browser.
·maplibre.org·
Plugins - MapLibre GL JS
tipg
tipg
Simple and Fast Geospatial OGC Features and Tiles API for PostGIS.
·developmentseed.org·
tipg
Yes, Postgres can do session vars - but should you use them?
Yes, Postgres can do session vars - but should you use them?
Animated by some comments / complaints about Postgres’ missing user variables story on a Reddit post about PostgreSQL pain points in the real world - I thought I’d elaborate a bit on sessions vars - which is indeed a little known Postgres functionality. Although this “alley” has existed for ages...
The obvious and more well known SQL way to keep some transient state is via temp tables! They give some nice data type guarantees, performance, editor happiness to name a few benefits. But - don’t use them for high frequency use cases! A few temp tables per second might already be too much and a disaster might be waiting to happen…Because CREATE TEMP TABLE actually writes into system catalogs behind the scenes, which might not be directly obvious… And in cases of violent mis-use - think frequent, short-lived temp tables with a lot of columns, plus unoptimized and overloaded Autovacuum together with long-running queries - can lead to extreme catalog bloat (mostly on pg_attribute) and unnecessary IO for each session start / relcache filling / query planning. And it’s also hard to recover from without some full locking - so that for critical high velocity DB’s it might be a good idea to revoke temp table privileges altogether - for app / mortal users at least (not possible for superusers).
The 2nd most obvious way to keep some DB-side session state around would probably be to use more persistent normal tables, right? Already better than temp tables as no danger of bloating the system catalog, right? NO. Pushing transient data though WAL (including replicas and backup systems) is pretty bad and pointless and only to be recommended for tiny use cases. In the Postgres world, exactly for these kinds of transient use cases, special UNLOGGED tables should be used! Which can relieve the IO pressure on the system / whole cluster considerably. One of course just needs to account for the semi-persistent nature - and the fact that they won’t be private anymore. Meaning usage of RLS in case of secret data or just using some random enough keys to avoid collisions.
·kmoppel.github.io·
Yes, Postgres can do session vars - but should you use them?
How should I handle and persist external API responses in my database?
How should I handle and persist external API responses in my database?
I’m working with an external service that has two main resources: Products and Deals. When I create these items through their API, I get back JSON responses that contain lots of data. Right now I only need certain fields from these responses, but I’m worried that later on I might need other parts of the data that I’m not currently storing. So I’m thinking about saving the complete JSON response somewhere just in case. What’s the recommended approach for handling this situation? I need advice o...
·community.latenode.com·
How should I handle and persist external API responses in my database?
TypR
TypR
·we-data-ch.github.io·
TypR
Igloo
Igloo
Discover how the sitrep() pattern simplifies R package maintenance and surfaces configuration errors in one go.
Stop playing “diagnostics ping-pong” with your users. This post explores why the _sitrep() (situation report) pattern — popularized by the usethis package — is a game-changer for R packages wrapping APIs or external software. Learn how to build structured validation functions that power both early error-handling and comprehensive system reports, featuring real-world implementation examples from the meetupr and freesurfer packages.
·drmowinckels.io·
Igloo
Geospatial API Fundamentals
Geospatial API Fundamentals
Geospatial APIs enable seamless access to spatial data, powering mapping, analysis, and urban analytics with standardized operations and protocols.
Geospatial APIs are software abstraction layers that provide standardized methods to query, analyze, and visualize spatial data from diverse sources. They support essential functionalities including 2D/3D map rendering, geocoding, coordinate transforms, and real-time sensor data integration. Modern designs employ RESTful architectures and OGC standards to enhance interoperability, performance, and scalability across geospatial applications.
A geospatial Application Programming Interface (API) is a software abstraction layer—typically a web service or client library—that exposes standardized operations for querying, rendering, analyzing, and modeling spatial data, including vector features, raster coverages, multi-dimensional sensor observations, and geospatial attributes. Geospatial APIs are foundational for scientific computing, urban analytics, planetary research, public health surveillance, and geospatial-AI workflows, enabling programmable access to distributed spatial resources and seamless integration across data repositories, sensor infrastructures, visualization platforms, and analytic pipelines.
·emergentmind.com·
Geospatial API Fundamentals