Sign in

Stephan

@stephanjnoel.bsky.social
147 followers 350 following 59 posts

Frontend developer doing React and NextJS Improving fire data on the NERIS team @fsri.bsky.social

PostsRepliesMedia
Stephan @stephanjnoel.bsky.social · 13/08/2026
Feel free to reach out if you have any questions. Excited to see what we can build on the ATmosphere.
000
Stephan @stephanjnoel.bsky.social · 13/08/2026
NERIS Public Incident Basics is now available. It’s a publicly available national fire incident dataset covering the previous 15 months on a trailing 60-day window, refreshed multiple times per week. You can read more here neris.fsri.org/blog/inciden...
neris.fsri.org
NERIS Public: Incident Basics Launches a Pipeline to Current Fire Data
At IAFC's Fire Rescue International conference in Kansas City, MO, the U.S. Fire Administration (USFA) and the NERIS team announced the release of NERIS Public: Incident Basics — a publicly available ...
100
Stephan @stephanjnoel.bsky.social · 06/08/2026
Coming soon www.linkedin.com/posts/neris-...
linkedin.com
For 50 years, national fire incident data has been released in annual batches, typically a year or more after the incidents occurred. This was useful for looking back, but not built for what is… | NER...
For 50 years, national fire incident data has been released in annual batches, typically a year or more after the incidents occurred. This was useful for looking back, but not built for what is happen...
121
Stephan @stephanjnoel.bsky.social · 26/05/2026
I’ve been keeping track of some as well here bsky.app/profile/did:... if you’d like to add more.
070
Stephan @stephanjnoel.bsky.social · 24/05/2026
I don’t want to overpromise, but FSRI is very in touch with the fire service as well. I’m a dev on the NERIS team but I also visit fire departments, and attend conferences and events (some we host) with fire chiefs and others. I’m more than happy to help in whatever capacity.
030
Stephan @stephanjnoel.bsky.social · 24/05/2026
I’m very interested in this. We’ll (FSRI, NERIS) have a public fire data source available in the near future but it’s not real-time. If you’re building this or something for fire, please reach out.
181
Stephan @stephanjnoel.bsky.social · 02/03/2026
There’s gotta be a way to make “For You” more discoverable. I feel like making it featured isn’t enough. Feeds is behind a sidebar, took me months before I ever went there. I know you don’t work there anymore, just this is a good example.
1160
Stephan @stephanjnoel.bsky.social · 26/01/2026
👋
000
Stephan @stephanjnoel.bsky.social · 11/12/2025
I want to attend all but I already registered some days ago. Is there a way to opt-in with a pre-existing ticket?
110
Stephan @stephanjnoel.bsky.social · 06/12/2025
I bought my ticket to #ATmosphereConf - see you all in Vancouver March 2026 atmosphereconf.org
atmosphereconf.org
ATmosphereConf 2026
ATmosphereConf is the global AT Protocol community conference Join us in Vancouver, BC, Canada, March 2026 at the UBC campus. Come early for two days of extended events, deep dives, and local activiti...
040
Stephan @stephanjnoel.bsky.social · 27/10/2025
There’s a deep dive here github.com/vercel/next..... Not sure how much has changed since it was written though.
github.com
Deep Dive: Caching and Revalidating · vercel next.js · Discussion #54075
The Next.js App Router introduced new heuristics around caching and revalidating. To ensure we’re all discussing the intended behavior of how caching is designed to work, I thought it would be help...
040
Stephan @stephanjnoel.bsky.social · 27/10/2025
I’ve been using revalidatePath in Next14 and it works fine. Docs for Next were a bit confusing as to what “triggering on next navigation” really means. If you do a router.refresh you lose the single round trip revalidation benefit and it invalidates a lot more.
110
Stephan @stephanjnoel.bsky.social · 24/10/2025
youtu.be/7gCCXCSs734?... @tangled.org new video, help Primeagen figure it out?
youtu.be
banned from github
YouTube video by ThePrimeTime
030
Stephan @stephanjnoel.bsky.social · 16/10/2025
How can one get involved? I’m subscribed and have been following along but it’s locked to invite/past contributors.
100
Stephan @stephanjnoel.bsky.social · 06/10/2025
Now I want to know your zod opinions
010
Stephan @stephanjnoel.bsky.social · 06/10/2025
I was thinking when I got back to at proto stuff I’d use Zod 4 with toJsonSchema(). zod.dev/json-schema. I guess that doesn’t work out?
zod.dev
JSON Schema | Zod
How to convert Zod schemas to JSON Schema
120
Stephan @stephanjnoel.bsky.social · 20/09/2025
Wow, that was fast. I’m in now. Thanks to both of you.
010
Stephan @stephanjnoel.bsky.social · 20/09/2025
Thanks! I opened an issue here tangled.org/@smokesignal.... Not sure if that’s the right place. Let me know if I can help.
tangled.org
failure openid_connect_sub_mismatch · issue #2 · @smokesignal.events/atproto-identity-rs
A library for ATProtocol identities.
110
Stephan @stephanjnoel.bsky.social · 20/09/2025
Unfortunately getting a “failure?message=openid_connect_sub_mismatch” when trying to sign up or login .
100
Stephan @stephanjnoel.bsky.social · 19/09/2025
Thanks for the info, I’ll be there
010
Stephan @stephanjnoel.bsky.social · 19/09/2025
Quick question. I’m kinda new to At Proto so bear with me, but if a PDS has ultimate discretion over what it hosts, how does that interact with the question of privacy, private data (possibly e2ee) and data ownership? Trying to figure out how data privacy is expected to play out eventuality.
100
Stephan @stephanjnoel.bsky.social · 15/09/2025
I’m trying to think if/how I can help. Making issues/pull requests to the docs doesn’t seem like the best path (maybe it depends?). Not sure if making a blog would help either. If there’s some preferred way of helping, please let me know.
000
Stephan @stephanjnoel.bsky.social · 15/09/2025
Hmm I’ll look more. I see it in the reference section, but feels like the reactwg discussions address the “why” a lot more, esp showing how you’d have to address things without the feature.
100
Stephan @stephanjnoel.bsky.social · 15/09/2025
I found these for the first time today github.com/reactwg/reac... github.com/reactwg/reac... My path was I did a google search and a Reddit thread mentioned them. Not sure how I didn’t find it earlier.
github.com
Real world example: adding startTransition for slow renders · reactwg react-18 · Discussion #65
In React 18 we announced a new startTransition API and shared a high-level overview of the problem it solves. In this post, we’re going to dive into a real-world example of speeding up a slow updat...
100
Stephan @stephanjnoel.bsky.social · 11/09/2025
Looking forward to it!
000
Stephan @stephanjnoel.bsky.social · 11/09/2025
I hope there was something useful here, it ended up more disorganized than I thought it would be.
100
Stephan @stephanjnoel.bsky.social · 11/09/2025
I was thinking maybe a deep dive and understandings bit more about how these work under the hood of Fiber based on the concept of concurrent React might help. Or maybe seeing more production use cases? I’m not really sure.
100
Stephan @stephanjnoel.bsky.social · 11/09/2025
Maybe it’s that I feel React’s approach to maintaining an api with a minimum surface area has shifted and I’m looking for something to help group/connect all these new features/concepts together in a coherent way to see how they’re part of a bigger vision/model instead of disconnected pieces.
100
Stephan @stephanjnoel.bsky.social · 11/09/2025
I saw someone (maybe you?) mention you need to understand Suspense to understand transitions. I thought it was the other way around, and thought it would be interesting to learn more about that connection.
100
Stephan @stephanjnoel.bsky.social · 11/09/2025
Where, when, how and and how often these new hooks are being used and expected to be used in production apps isn’t clear to me. useDeferredValue still seems niche, even more so with the compiler.
100
Stephan @stephanjnoel.bsky.social · 11/09/2025
Like I know transitions are useful for submitting forms, and routers like NextJS use them internally but I’m having a hard time finding concrete use cases outside of that. You could add an action prop to design system components but should you and why/why not? Transition all the things?
110
Stephan @stephanjnoel.bsky.social · 11/09/2025
I saw Ryan’s attempt to make a clipboard copy using async transitions for the pending state. Like async transitions as a general purpose way to coordinate and batch things async. It was interesting, but even though you could, I wasn’t sure if you should.
100
Stephan @stephanjnoel.bsky.social · 11/09/2025
The “action” terminology (vs just client server functions) is still kinda fuzzy. I get it’s a state update or server function called in a transition, but that definition feels kind of like memorizing instead of understanding. I feel like I’m not getting the the “why” behind it.
110
Stephan @stephanjnoel.bsky.social · 11/09/2025
I’m not sure I can put it in words well myself, but there’s a nagging feeling I have that I’m not understanding transitions on a deeper level.
210
Stephan @stephanjnoel.bsky.social · 11/09/2025
Really interested in the concurrent stores mentioned in the context selectors RFC and how that might contrast to signals. Also, a deep dive into transitions/actions, useOptimistic, Suspense, Activity, and Fiber, and how they all fit together. Trying to see the big picture of concurrent React.
150
Stephan @stephanjnoel.bsky.social · 26/06/2025
Do you have any thoughts on local-first software or sync engines potentially helping here?
000
Stephan @stephanjnoel.bsky.social · 07/06/2025
If you’re interested in why offline writes will be temporarily disabled in zero sync, you can find more here zero.rocicorp.dev/docs/offline. The referenced “Lies I was told about Collaborative editing” article is very insightful.
zero.rocicorp.dev
Zero Docs
The official documentation for Zero by Rocicorp.
000
Stephan @stephanjnoel.bsky.social · 07/06/2025
This was a great discussion about local-first vs sync engines, the relation between local-first and AI, and also the temporary disabling of offline writes in zero sync (upcoming day 2 talk by Peter will cover Patchwork’s approach I think).
230
Stephan @stephanjnoel.bsky.social · 20/05/2025
For sure. I wonder if people think Snapchat and IG are more private than they really are though. Hope AtProto can address this in some way.
000
Stephan @stephanjnoel.bsky.social · 20/05/2025
From what I can tell, still yes, and it’s dependent on Oauth scopes which I think they’re working on next. docs.bsky.app/blog/2025-pr...
docs.bsky.app
2025 Protocol Roadmap (Spring and Summer) | Bluesky
Join the Github discussion here.
050
Stephan @stephanjnoel.bsky.social · 19/05/2025
Could taste trust be scoped to some topics? Ie, I trust someone on React, but not their restaurant opinions.
010
Stephan @stephanjnoel.bsky.social · 14/05/2025
Use a key to force it to remount?
000
Stephan @stephanjnoel.bsky.social · 10/05/2025
I see. I thought the tag part of revalidateTag would avoid that. Seems like it’s being worked on according to lee’s response. I also remember this post about the invalidate everything strategy tkdodo.eu/blog/automat..., so if you use that strategy, I’m not sure what tanstack query could give you
tkdodo.eu
Automatic Query Invalidation after Mutations
Even though there is nothing built into React Query, it doesn't need a lot of code to implement automatic query invalidation in user-land thanks to the global cache callbacks.
130
Stephan @stephanjnoel.bsky.social · 10/05/2025
Wow, interesting. This revalidation part is still very vague to me, if you ever do a deep dive, this needs it. On the other hand tkdodo did mention he agrees that coarse validation could be good enough without the maintenance burden of cache keys tkdodo.eu/blog/automat....
tkdodo.eu
Automatic Query Invalidation after Mutations
Even though there is nothing built into React Query, it doesn't need a lot of code to implement automatic query invalidation in user-land thanks to the global cache callbacks.
000
Stephan @stephanjnoel.bsky.social · 10/05/2025
I’m trying to understand the difference between what Tanner is describing and revalidateTag or revalidatePath in NextJS. That’s basically what I do and nothing is blown away as far as I can tell. If I’m not mistaken, it’s better than Tanstack Query invalidation since it’s a single roundtrip.
240
Stephan @stephanjnoel.bsky.social · 08/05/2025
Myth: If you have a separate api or backend that’s not in JavaScript, RSCs and server actions don’t give you any benefits and you shouldn’t use them. Maybe debatable…
020
Stephan @stephanjnoel.bsky.social · 08/05/2025
Myth: RSCs don’t re-render. You kinda covered it in one of the posts, about navigations causing props to refresh but I’d like to go deeper on how that refresh and merging happens.
010
Stephan @stephanjnoel.bsky.social · 04/05/2025
Would you ever blog/vlog about atproto the way you blog about React?
110
Stephan @stephanjnoel.bsky.social · 02/05/2025
I think this was made to address a similar problem around people not being sure what was and was not local-first as it was coined by Ink and Switch.
000
Stephan @stephanjnoel.bsky.social · 02/05/2025
We need something like @localfirst.fm landscape for decentralized tech. Can base it off of that gitlab repo comparison Jay did a while back. www.localfirst.fm/landscape
localfirst.fm
Local-First Landscape
Navigate the local-first landscape and build something great!
100