Sign in

Jonathan Bowers

@jonotron.ca
118 followers 143 following 147 posts

🦋 Wildfire and climate tech, 🏊🏼🚴🏼🏃🏼 triathlon, 🧑🏼‍💻 data and code, 👶🏼 parenting. 🌲 Co-founder of @pathandfocus.com (wildfire) 🤖 Founder of @twostoryrobot.com (code)

PostsRepliesMedia
Jonathan Bowers @jonotron.ca · 11/08/2026
ECCC is forecasting some clearer air later today and Wednesday for #kamloops wxcraft.com/map/smoke?t=...
wxcraft.com
Smoke Forecast Map · Wed 18:00 UTC
Surface PM2.5 for Wed 18:00 UTC, forecast by ECCC FireWork, with the pinned location charted hour by hour.
010
Jonathan Bowers @jonotron.ca · 04/11/2025
@ballxpit.com it’s a bit too hard for my 6yo but he really likes watching me and deciding my upgrades. He’s also been building and playing in his imagination. Also the other kids in his class have no idea what he’s talking about. Anyways, here’s his builds
Skeleton King and some random enemies from Ball x Pit made from LegoVarious balls from Ball x Pit made from Plus Plus
030
Jonathan Bowers @jonotron.ca · 21/08/2025
Don’t let your kids watch Numberblocks endlessly. My kid is now counting by squares! 4, 9, 16, 25.
110
Jonathan Bowers @jonotron.ca · 12/08/2025
Wooo. Another local org taking the steps to verify
100
Jonathan Bowers @jonotron.ca · 11/07/2025
I don’t mean to brag but I’m kinda awesome at naming stuff. Beetle with a horn: Narweedle ABCs caterpillar: Ellemenopede the alphabetapillar
Clear plastic toy beetle with a single hornMulti coloured stuffed toy caterpillar with alphabet letters on each body segment
010
Jonathan Bowers @jonotron.ca · 01/06/2025
Wow redwoodsdk (@redwoodjs.com) is so good. I managed to get a first working version of a small app built in a morning... server components w/ server fns for fetching/posting data, persisting in @cloudflare.social Durable Objects. This dx is great. Idea → deploy → scale (beyond 1) cycle looks FAST
221
Reposted by Jonathan Bowers
LiveStore @livestore.dev · 27/05/2025
Introducing LiveStore (beta) LiveStore is a next-generation state management framework based on reactive SQLite and built-in sync engine. livestore.dev
livestore.dev
LiveStore: Local-first data layer for high-performance appsArrowArrowArrowArrowLiveStore
LiveStore is a state management framework based on SQLite and event-sourcing. It’s designed for demanding applications and based on years of research.
17020
Jonathan Bowers @jonotron.ca · 25/05/2025
#Kamloops had a little #wildfire this weekend that was quickly brought under control 🙏🏼 1st image is what LensVx shows for the potential growth of that fire (assuming no action taken and burning for 8h) 2nd image is if it starts on June 29, 2021 (peak heat dome).
Screenshot of a white and grey map in LensVx with an ignition point in Kenna Cartwright Park in Kamloops. The UI has Fire Intensity and HRDPS weather model selected. The ignition point is surrounded by a small cluster of pixels in orange and red showing little fire growth during the 8 hour burn period.Screenshot of a white and grey map in LensVx with an ignition point in Kenna Cartwright Park in Kamloops. The UI has Fire Intensity and Kamloops Heat dome historic weather selected. The fire spreads significantly across the majority of the park from the ignition point as shown by a large number of red and dark red pixels.
123
Jonathan Bowers @jonotron.ca · 22/05/2025
We use a white base for better data viz in LensVx, but it makes placing ignition points a little tricky. So we've added two extra layers: Canada wide fuel, and a satellite layer. The fuel layer let's you see the underlying fuel types while the satellite layer gives some context. #wildfire
Title: Satellite \\ Fuel \\ Data Visualization

Graphic showing a red wild fire growth model output stretch across a mapping interface. The map background is divided into thirds showing satellite overhead images, colourful fuel data, and white and grey streets and land marks. The logo and word mark of Path and Focus is in the lower left corner.
010
Jonathan Bowers @jonotron.ca · 15/05/2025
We built Lens so the public could better see the effects of wildfire and hopefully become better prepared. This gif shows the deadly fire in Manitoba and it's rapid growth. Interact with it yourself: lens.pathandfocus.com?endDate=2025... or explore other current or past fires in Canada #wildfire
010
Jonathan Bowers @jonotron.ca · 14/05/2025
@kamscan.bsky.social lots of black smoke coming from West of Kamloops/Pineview. Maybe truck on fire on the highway?
000
Jonathan Bowers @jonotron.ca · 13/05/2025
Welp, we started adding some legends to our fire growth outputs and realized that we were only using half of the colour palette. We should have mapped fire intensity to a scale of -1 to 1 instead we only mapped from 0 to 1 and missed the entire yellow portion of the palette. #wildfire
Screen shot of LensVx showing the fire intensity raster on a map. The output spreads to the north from a point on the map. The output is various shades of red.Screen shot of LensVx showing the fire intensity raster on a map. The output spreads to the north from a point on the map. The output is various shades of yellow, orange, and red.
010
Jonathan Bowers @jonotron.ca · 02/05/2025
I was a guest on @ykanevin.bsky.social’s Kamloops focused podcast Go have a listen
loopszer.transistor.fm
Loopszer | Jonathan Bowers, Community Organizer
The opinions expressed or views expressed do not necessarily reflect or represent those of the host; such views are merely opinions expressed.Audio engineering provided by Colby Boffa of @i.m.u.music.
131
Jonathan Bowers @jonotron.ca · 21/04/2025
Got my first coin with the king.
Photo of a Canadian Loonie with the image of King Charles III
000
Jonathan Bowers @jonotron.ca · 14/04/2025
I just learned to tie a Falconer’s Knot.
Photo of a black leash tied to a black deck stair railing in the sun.
010
Jonathan Bowers @jonotron.ca · 04/04/2025
It’s a fully baked in validity mechanism. Avoid impersonation and confusion. And yes, cool 😎. It’s REALLY easy to do, but does need the IT folks. I know we can be a bit resistant to editing DNS records. Tell them some random guy on the internet said to do it. That might help.
010
Jonathan Bowers @jonotron.ca · 03/04/2025
Look what we have here! The City of Kamloops verified their domain! @kamloops.ca! What other BC cities have done this? #kamloops
010
Jonathan Bowers @jonotron.ca · 29/03/2025
@tnrdinbc.bsky.social 👋 it would be super cool if you added your domain as your handle. Easy to do by your IT folks and instant credibility. bsky.social/about/blog/4...
bsky.social
How to verify your Bluesky account - Bluesky
Here's how to verify your Bluesky account by setting your website as your username.
220
Jonathan Bowers @jonotron.ca · 29/03/2025
First time in the @tnrdinbc.bsky.social book mobile at the TCC today! What an awesome service
010
Jonathan Bowers @jonotron.ca · 27/03/2025
@schickling.dev loving the podcast! Super curious about livestore. Sounds like exactly what I’m looking for. Does it sync with cloudflare (d1 and/or durable obj)? I’ve been having a lot of success with TinyBase, but I find the API cumbersome. Livestore looks way more my style.
100
Jonathan Bowers @jonotron.ca · 23/03/2025
In today’s news climate, this is the kind of hard hitting crime journalism that I know I could use a little more of:
castanet.net
Man caught swapping eggs between cartons has police, grocery store staff, scrambled - Nelson News
There was no ‘yolking’ about a call to Nelson police Friday morning.
000
Jonathan Bowers @jonotron.ca · 20/03/2025
@kamscan.bsky.social 6 or 7 unmarked trucks and cars lights and sirens heading westbound towards Kamloops on hwy 1. I’m just near Monte creek
130
Reposted by Jonathan Bowers
Wanda🇨🇦 @sparkesw.bsky.social · 12/03/2025
Found this for the first time at my Manitoba Co-op! Go, Kamloops!!!!🇨🇦
735336
Jonathan Bowers @jonotron.ca · 05/03/2025
Today I got to help an older woman cross two streets! She didn’t trust her walking stick and so was waiting for a “strapping young man”. I’ll gladly take the compliment ma’am! #kamloops
040
Jonathan Bowers @jonotron.ca · 04/03/2025
Hey @cityofkamloops.bsky.social just a friendly reminder that I (and I’m sure others) would love to see you with a verified domain handle here
000
Jonathan Bowers @jonotron.ca · 26/02/2025
Wholly crap this is soo good. Still some rough edges, but I think I've already figured out a small use case that is going to save 10-15min a day. I've imagined a day where I can coordinate outputs from extensions as inputs into others and this delivers on that desire 10 fold.
010
Jonathan Bowers @jonotron.ca · 16/02/2025
7 days in Cancun as our first family tropical vacation. We hit perfect weather, and a lot of new experiences for our 6yo.
000
Jonathan Bowers @jonotron.ca · 06/02/2025
My ai #weather data dashboard now has a map and can do some cool stuff. Here I've provided an english query for a rolling average temp on the 2 months on either side of the highest temp day.
Screen shot of a prototype weather dashboard. A map shows hundreds of weather stations across Western Canada in black with a station in Kamloops coloured red. A text box shows an English query: "7 day rolling average temp for the 2 months before and after the highest average daily temp" and resulting temperature graph centered around July 1, 2021.
000
Jonathan Bowers @jonotron.ca · 01/02/2025
I spent a good chunk of time the last few weeks writing a 500+ line duckdb sql query to calculate 12 nearest station distance interpolated weather values AND hourly fire weather indices. What a beast! Now to rip it all apart and maybe do less in the query. #duckdb #weather #wx #wildfire
Screenshot showing tabular weather data. Columns include date, relative humidity, wind speed, temperature, precipitation, wind direction, ffmc, dmc, dc, isi, bui, fwi.
010
Reposted by Jonathan Bowers
George Takei @georgetakei.bsky.social · 31/01/2025
This is what the government did with 120K+ Japanese Americans in 1942. I know. I was there in those camps.
34549891531616
Reposted by Jonathan Bowers
Erin Reed @erininthemorning.com · 25/01/2025
Ever wonder what snow in the swamp would look like? This is 5 miles into the Louisiana swamps in the Atchafalaya basin... it's unreal... having lived down there for the first 28 years of my life, we never saw anything like this. Smashed records. Curtesy of Garrett Roberts.
1210347456905
Jonathan Bowers @jonotron.ca · 23/01/2025
The @duckdb.org spatial extension is cool... but using it in duckdb-wasm feels like black magic! I'm making some good progress in my little experimental weather app doing spatial queries against parquet files... ZERO moving parts, basically free. bsky.app/profile/jono... #wx
020
Jonathan Bowers @jonotron.ca · 22/01/2025
I’ve gone nearly full circle in the public education system (student, employee, and now parent in PAC). One thing that becomes clearer the further along I go: Parents, teachers, support… everyone is basically just trying to make up for the complete lack of funding and investment into education.
030
Jonathan Bowers @jonotron.ca · 21/01/2025
@gunsinger.bsky.social 👋
000
Reposted by Jonathan Bowers
Dan Olson @foldablehuman.bsky.social · 20/01/2025
Very important news
451551140
Jonathan Bowers @jonotron.ca · 19/01/2025
1) I probably shouldn’t have tried to sell a used mattress on marketplace 2) one probably shouldn’t buy a used mattress from marketplace 3) definitely don’t expect to fold a used queen mattress you bought off marketplace into the trunk of a compact sedan
000
Jonathan Bowers @jonotron.ca · 13/01/2025
ghostty.org is super cool! My fav feature is pane zooming. ⌘+⇧+⏎ to toggle zooming in on a pane (making it full window sized), per pane font-size adjustments with ⌘+=/⌘+- Oh of course the icon... the icon is worth switching for alone.
ghostty.org
Ghostty
Ghostty is a fast, feature-rich, and cross-platform terminal emulator that uses platform-native UI and GPU acceleration.
000
Jonathan Bowers @jonotron.ca · 05/01/2025
It works! My silly simple kids savings/finance tracking app. Teach kids about compounding interest by logging deposits to the Bank of [Caring Adult]. No styling and no way for another user to use it yet, but I'm pleased with the results so far. Calcs interest earned to date, today (or any day).
Screenshot of a work-in-progress kids finance tracking app. A form allows entry of amounts and dates for credits/deposits. Stats show net deposits, current balance, total interest earned, and interest earned today.
110
Jonathan Bowers @jonotron.ca · 03/01/2025
After waaaay too much time debugging a silly mistake I’ve finally got a little @tinybase.bsky.social app syncing to durable objects. It’s slick as heck! I really want to use @tanstack.com start for more but the DX with @cloudflare.social isn’t quite as nice as @hono.dev
240
Reposted by Jonathan Bowers
Man in Business Suit Levitating @dfeldman.org · 25/12/2024
You’re still arguing about tabs vs. spaces? May I present…
Code written with box characters used on old old software to make fake UIs
15652631267
Reposted by Jonathan Bowers
Nancy Bepple @nancybepple.bsky.social · 24/12/2024
The majority of women over 65yrs in Canada don’t rely on their own driving for transportation. Having other options, whether walking, cycling, or transit gives senior women freedom to get around independently in their own municipalities. #munipoli #SeniorServices Source tests.ca/driving-stat...
2165
Jonathan Bowers @jonotron.ca · 24/12/2024
Wow! @vitest.dev + @cloudflare.social's vitest tooling is awesome. Local versions of CF services, isolated storage between tests, integration tests > unit test, test running in miniflare other vitest stuff I like while I holiday hack: top level async in tests, module mocking
developers.cloudflare.com
Write your first test · Cloudflare Workers docs
Write unit tests against Workers.
011
Reposted by Jonathan Bowers
Brent Toderian @brenttoderian.bsky.social · 21/12/2024
The “E-Bike Effect:” Those who bought e-bikes increased their average daily bicycle use from 2.1km (1.3 miles) to 9.2km (5.7 miles), a 340% increase. The e-bike share of all their transportation increased dramatically too; from 17% to 49%. E-bikes support fewer car trips. V/@lloydalter.bsky.social
treehugger.com
E-Bikers Ride Much Farther and More Frequently Than Regular Bikers
They are not 'cheating,' but are serious transportation.
41887246
Jonathan Bowers @jonotron.ca · 21/12/2024
@turtlemapper.bsky.social 👋
000
Jonathan Bowers @jonotron.ca · 19/12/2024
The real thing about passing 40 is the damn greys @justinjackson.ca
110
Jonathan Bowers @jonotron.ca · 06/12/2024
@cityofkamloops.bsky.social see this 👇? Kamloops.ca domain as a handle is cool AND good.
020
Reposted by Jonathan Bowers
Merlin Blackwell of Clearwater🇨🇦 @blackwellmerlin.bsky.social · 01/12/2024
Not sure if anyone has done this, so I made a Starter Pack for B.C. local elected officials… chime in and I’ll add you. go.bsky.app/UU5rr3i
10226
Jonathan Bowers @jonotron.ca · 01/12/2024
Today’s Facebook marketplace scammer didn’t get it. Was I not obvious enough?
000
Jonathan Bowers @jonotron.ca · 30/11/2024
@graze.social exploring this great tool. Love that it's @tldraw.com! Is it possible to build criteria like some other feeds where one tag is used to include a single post and another is used to add your account to the feed? like the BlackSky feed?
130
Jonathan Bowers @jonotron.ca · 28/11/2024
@calebsharp.dev Welcome!
010