James Fee's Avatar

James Fee

@james.fee.fm

Geographer who now spends his time on cloud architecture. Engineering Director @Trimble for workflows. Lifelong baseball fan, proud supporter of the San Francisco Giants, and a devoted thalassophile. My Twitter Archive resides at @cageyjames.bsky.social

366
Followers
459
Following
513
Posts
11.10.2023
Joined
Posts Following

Latest posts by James Fee @james.fee.fm

Preview
a man in a suit and tie with netflix written on the bottom ALT: a man in a suit and tie with netflix written on the bottom

I’m so happy to see @sfgiants.com spring training games.

25.02.2026 00:35 👍 0 🔁 0 💬 1 📌 0
AI Isn’t the Product. The Workflow Is. - Spatially Adjusted by James Fee Every few days someone sends me a new demo. AI generates a house. AI designs a backyard. AI produces a digital twin from a handful of photos. The

AI demos are everywhere right now.

Beautiful renderings. Smooth flythroughs. Instant magic.

But magic isn’t a product. Workflow is.

If it can’t survive permitting, budgets, integrations, and reality… it’s just a very good video.

New post:
spatiallyadjusted.com/ai-isnt-the-...

16.02.2026 21:16 👍 1 🔁 0 💬 0 📌 0
Preview
three men standing next to each other with the words you keep using that word ALT: three men standing next to each other with the words you keep using that word

Every time I see someone talk about agentic ai.

08.02.2026 16:39 👍 0 🔁 0 💬 0 📌 0
Cloud-Native Didn’t Fail. We Just Never Finished the Sentence. - Spatially Adjusted by James Fee “Cloud-native” didn’t fail. It just stopped mid-sentence, stared confidently at the audience, and waited for applause. Cloud-native storage.

Cloud-native didn’t fail. We just stopped the sentence at “storage” and called it architecture.

Object storage ≠ systems
Containers ≠ workflows
“It scales” ≠ operations

Cloud-native didn’t remove complexity. It just stopped letting us ignore it.
spatiallyadjusted.com/cloud-native...

06.02.2026 21:33 👍 1 🔁 0 💬 0 📌 0

So no turkey sandwich?

05.02.2026 21:18 👍 0 🔁 0 💬 0 📌 0
The Lie of “Self-Service” GIS - Spatially Adjusted by James Fee Every modern GIS platform claims to support self-service. Self-service analytics. Self-service data access. Self-service publishing. What they

“Self-service GIS” usually means:
You now own all the complexity we didn’t productize.

If users can’t understand what the system is doing without asking a human, it isn’t self-service — it’s unpaid labor.
spatiallyadjusted.com/the-lie-of-s...

04.02.2026 00:24 👍 2 🔁 0 💬 0 📌 0
Post-GIS, Revisited (Again): Some Thoughts Sparked by Bill Dollins - Spatially Adjusted by James Fee I read Bill Dollins’ recent post, Post-GIS Revisited, and found myself nodding along — not because it neatly resolves the “post-GIS” question, but

“Post-GIS” isn’t about GIS going away. It’s about spatial thinking no longer insisting on being the front door.

Bill Dollins’ post sparked some thoughts I couldn’t shake, so I wrote a response:

spatiallyadjusted.com/post-gis-rev...

We’re not post-GIS. We’re post pretending GIS is the whole story.

02.02.2026 20:40 👍 1 🔁 0 💬 0 📌 0

This is what people need to understand about the 1%. It’s a different world.

31.01.2026 01:05 👍 1 🔁 0 💬 0 📌 0
Lessons from Scale #10: Failure Is a First-Class API - Spatially Adjusted by James Fee Failure is not an edge case. At scale, systems fail constantly: dependencies time out partial work succeeds retries collide state drifts

Failure isn’t an edge case. It’s the default condition at scale.
If failure isn’t modeled, named, and exposed, users will invent their own handling.

And that’s where humans sneak back in.

Lessons from Scale #10:

Failure Is a First-Class API

spatiallyadjusted.com/lessons-from...

30.01.2026 19:15 👍 1 🔁 0 💬 0 📌 0
Lessons from Scale #9: Observability Is a User Feature - Spatially Adjusted by James Fee Observability is usually described as an engineering concern. Logs. Metrics. Traces. Dashboards that only a few people know how to read. At small

At scale, observability isn’t an ops concern.
It’s a user feature. The moment someone asks “Did it run?” or “What happened?”, the system has already failed to communicate. Logs don’t build trust. Visible state does.

Observability Is a User Feature

spatiallyadjusted.com/lessons-from...

29.01.2026 22:53 👍 0 🔁 0 💬 0 📌 0
Lessons from Scale #8: APIs Don’t Integrate Systems. Workflows Do. - Spatially Adjusted by James Fee Every modern system has APIs. And yet somehow, at scale, work still moves through screenshots, Slack messages, copied IDs, “just rerun it,” and

Every system I’ve worked on had APIs.

None of them actually integrated anything.

- APIs expose verbs.
- Workflows express intent.

At scale, humans become the glue only when systems refuse to remember state.

APIs Don’t Integrate Systems. Workflows Do.

spatiallyadjusted.com/lessons-from...

29.01.2026 01:55 👍 0 🔁 0 💬 0 📌 0

Revolution starts when grandma’s sit on corners in Phoenix with signs that say deport Steven Miller now. You can’t fight a grandma.

28.01.2026 23:41 👍 1 🔁 0 💬 0 📌 0
Preview
two stuffed dogs are sleeping in a dog bed with whatgifs.com written on the bottom right ALT: two stuffed dogs are sleeping in a dog bed with whatgifs.com written on the bottom right
28.01.2026 04:02 👍 0 🔁 0 💬 0 📌 0

Sometimes it just works out.

Wordle 1,683 3/6

⬛⬛⬛⬛⬛
🟨⬛⬛⬛⬛
🟩🟩🟩🟩🟩

28.01.2026 02:53 👍 1 🔁 0 💬 0 📌 0
Lessons from Scale #7: Humans Are Not a Scalable Integration Pattern - Spatially Adjusted by James Fee For most of my career, GIS has “worked” not because the systems were resilient, but because very smart, very patient people were standing just out

Most spatial systems don’t fail loudly.

They fail politely — and a human fixes it before anyone notices.
That’s not automation.

That’s a Wizard-of-Oz system.

Humans are not a scalable integration pattern: spatiallyadjusted.com/humans-are-n...

27.01.2026 17:22 👍 2 🔁 0 💬 0 📌 0
Lessons from Scale - Spatially Adjusted by James Fee There’s a comforting myth we like to tell ourselves in technology: If only everyone followed the standard, things would work. This is almost

Standards don’t usually fail because they’re wrong. They fail because we stop being honest about what they’re doing for us.

Schemas harden. Extensions multiply. Humans quietly become the glue.

spatiallyadjusted.com/lessons-from...

26.01.2026 14:28 👍 1 🔁 0 💬 0 📌 0
COG + STAC Isn’t a Stack. It’s a Contract. - Spatially Adjusted by James Fee For a long time, we told ourselves a comforting lie: “It’s just a file.” The file lived in a folder. The folder lived on a server. The name of

COG + STAC isn’t a stack, it’s a contract. A contract about access patterns, about metadata. About admitting humans can’t be the glue at scale. Cloud-native didn’t win because it was elegant. It won because it was honest.

🔗 spatiallyadjusted.com/cog-stac-isn...

23.01.2026 16:25 👍 0 🔁 0 💬 0 📌 0
Lessons from Scale #5: Scale Doesn’t Break Systems — It Reveals the Real One - Spatially Adjusted by James Fee For a long time, I believed scale caused problems. Latency spikes. Weird edge cases. Workflows that worked perfectly fine yesterday suddenly

Scale doesn’t break systems, it reveals the one you actually built.

At small scale, humans are the glue.
At large scale, assumptions become outages.

If your system only works because someone “knows how it works”…. that’s not design. That’s babysitting.

spatiallyadjusted.com/lessons-from...

22.01.2026 15:22 👍 4 🔁 1 💬 0 📌 0
GIS Doesn’t Create Complexity. It Just Stops Letting You Ignore It. - Spatially Adjusted by James Fee At some point, almost every GIS team hears the same complaint: “GIS makes everything more complicated.” This is usually said right after a map

I’ve spent most of my career watching GIS get blamed for problems it didn’t create. The map wasn’t wrong.

The organization just didn’t want to look at what it was showing.

spatiallyadjusted.com/gis-doesnt-c...

21.01.2026 19:47 👍 2 🔁 0 💬 0 📌 0
Preview
a man in a suit and tie is giving a thank you sign . ALT: a man in a suit and tie is giving a thank you sign .

Thanks. I’m trying to get back into more long form writing.

20.01.2026 18:32 👍 1 🔁 0 💬 0 📌 0
Lessons from Scale #4: Workflow Orchestration Is a Product Surface - Spatially Adjusted by James Fee For a long time, I treated workflow orchestration as plumbing. Important plumbing, sure, but still plumbing. Something you install, test once, and

Orchestration works great as “plumbing” until users care about outcomes. Then it quietly becomes part of your product, whether you planned for that or not.

spatiallyadjusted.com/lessons-from...

20.01.2026 17:56 👍 1 🔁 0 💬 1 📌 0
Most GIS Problems Aren’t GIS Problems - Spatially Adjusted by James Fee After a few decades working around GIS, I’ve come to a fairly reliable conclusion: when something goes wrong, it’s almost never because the GIS

“The GIS is wrong” usually means “we never agreed on what right looks like.”

A few thoughts on why most GIS problems aren’t actually GIS problems: spatiallyadjusted.com/most-gis-pro...

19.01.2026 15:10 👍 0 🔁 0 💬 0 📌 0
Preview
a cartoon character with blue hair says so this is what it feels like when doves cry .. ALT: a cartoon character with blue hair says so this is what it feels like when doves cry ..
19.01.2026 03:51 👍 0 🔁 0 💬 0 📌 0
File Formats Don’t Define Interoperability - Spatially Adjusted by James Fee For a long time, I believed interoperability in spatial systems was mostly a file format problem. That belief is understandable. File formats are

Post #2 digs into a long-held myth: that interoperability is mostly a file format problem.

Spoiler: formats matter, but workflows matter a lot more.

spatiallyadjusted.com/lessons-from...

#GIS #Geospatial #SpatialWorkflows

18.01.2026 21:19 👍 3 🔁 0 💬 0 📌 0
What Working at Trimble Has Reinforced About Spatial Scale - Spatially Adjusted by James Fee One of the things working at Trimble has reinforced for me—over and over again—is that scale changes everything. And I don’t just mean big data in

I’ve started a new series on Spatially Adjusted called “Lessons from Scale.”

It’s about what actually breaks (or changes) when spatial tech moves from small, local use to enterprise scale — across GIS, CAD, BIM, workflows, and people.

Post #1: spatiallyadjusted.com/trimble-spat...

18.01.2026 21:15 👍 6 🔁 0 💬 1 📌 0

Post #2 digs into a long-held myth: that interoperability is mostly a file format problem.

Spoiler: formats matter, but workflows matter a lot more.

www.spatiallyadjusted.com/lessons-from...
#GIS #Geospatial #SpatialWorkflows

18.01.2026 21:08 👍 0 🔁 0 💬 0 📌 0

Well, when I was younger, I was a huge rams fan. They moved to St. Louis and now I could care less about them.

18.01.2026 20:31 👍 0 🔁 0 💬 0 📌 0
Preview
a cartoon character with blue hair says so this is what it feels like when doves cry .. ALT: a cartoon character with blue hair says so this is what it feels like when doves cry ..
18.01.2026 18:19 👍 0 🔁 0 💬 0 📌 0
Post image

Boy, these two look like a lot of fun!

18.01.2026 17:13 👍 1 🔁 0 💬 0 📌 0
Preview
a cartoon character is playing frisbee in a park with the number 2 on the bottom of the screen ALT: a cartoon character is playing frisbee in a park with the number 2 on the bottom of the screen

People keep pointing out what a mess I am. These are my pro teams, it’s not my fault. I’ve moved around a lot.

MLB - @sfgiants.com
College - Arizona State
NBA - Lakers
NHL - Utah
NFL - Jets

18.01.2026 17:08 👍 1 🔁 0 💬 1 📌 0