I've been integrating pg_webhooks into some project work lately. Conversely, I have not been using n8n much, but a vendor rep used it in a demo of some workflow automation capabilities for a platform one of my customers is using. I had dabbled with it about two years ago but haven't done much with it … Continue reading Using pg_webhooks with n8n – A Simple Example
Category: gis
How Do I Write?
This question comes up more frequently than I would expect. I've been writing here since 2006 and this blog is a good map of my professional journey over that time. Most often, when people ask me the titular question, they are wondering how I can keep this up for so long. Less frequently, the question … Continue reading How Do I Write?
A Grudging Thanks to Tests
Mea culpa, mea culpa, mea maxima culpa Jimmy Buffet, "Fruitcakes," 1994 I hate writing tests. With the white-hot passion of a thousand suns. Tests are good and necessary for quality software. Automating tests is the core of any CI/CD pipeline worthy of the name. I am well-versed in the value of tests and testing. I … Continue reading A Grudging Thanks to Tests
Window Functions and PostGIS
FOSS4G North America was an opportunity for me to reconnect with both community and technology. I enjoyed being able to both learn new things and refresh my skills with technologies such as PostGIS. I was reflecting on how, a couple weeks prior to the conference, I introduced the concept of PostgreSQL window functions to a … Continue reading Window Functions and PostGIS
Initial Thoughts on FOSS4G North America
FOSS4G North America (FOSS4GNA) wrapped up yesterday, closing out with another thought-provoking keynote by Paul Ramsey. Paul’s talks on the “economics of open source” have evolved over the years and, while this talk certainly discussed such economics, it was so much more. Paul is one of the best speakers you will see and his talks … Continue reading Initial Thoughts on FOSS4G North America
Data Over Software
One of the first tasks I ever had in my then-new GIS career was doing AML development in ARC/INFO 6.x for a data production project. My code parsed DXF exported from AutoCAD R11 for DOS and then assigned attributes based on things like layer, color, line weight, feature type, and others. It also georeferenced the … Continue reading Data Over Software
Balancing Organizational Controls and Technical Controls in Data
Technical Controls - The security controls (i.e., safeguards or countermeasures) for an information system that are primarily implemented and executed by the information system through mechanisms contained in the hardware, software, or firmware components of the system. Organizational Controls - The security controls (i.e., safeguards or countermeasures) for an information system that primarily are implemented … Continue reading Balancing Organizational Controls and Technical Controls in Data
TUgis Wrap-Up
Earlier this month, I attended TUgis, Maryland’s annual GIS conference. It was my first time attending since I gave the keynote address in 2017. That was due primarily to the conference being moved to early August - a reasonable adjustment due to the fact that the venue is always Towson University and the new timeframe … Continue reading TUgis Wrap-Up
A Few Updates to pg_webhooks
At the time of my last post, there were a few outstanding issues that I wanted to address in the code of pg_webhooks. I've addressed three of them this week. There wasn't actually a route to unsubscribe from a channel, so I added that shortly after the initial release. Another key shortcoming was that the … Continue reading A Few Updates to pg_webhooks
A Simple Webhook Interface for PostgreSQL NOTIFY
PostgreSQL's NOTIFY/LISTEN method for subscribing to events from a database is a subject I return to periodically. I've touched on it in one form or another over several years. My latest run at it involves building a Node Express application that will allow external systems to subscribe to webhooks that are fired by NOTIFY statements … Continue reading A Simple Webhook Interface for PostgreSQL NOTIFY