Garik
banner
garik.codes
Garik
@garik.codes
Independent SWE + IT guy in the rural inland PNW

stats • sports • econ • maps • space • skiing
🧵 10/11 These charts show the rapid rise of an already bad situation after AWS and other data centers moved in after 2008.
November 26, 2025 at 2:14 AM
🧵 9/11 Here's a side-by-side of data centers and unsafe wells.
November 26, 2025 at 2:14 AM
🧵 8/11 And where did almost all of that money come from?

• 𝗥𝗲𝗽𝘂𝗿𝗽𝗼𝘀𝗲𝗱 𝗳𝗿𝗼𝗺 𝗗𝗘𝗤 𝗳𝗶𝗻𝗲𝘀
• 𝗪𝗜𝗙𝗜𝗔 𝗔𝗰𝘁 𝗴𝗿𝗮𝗻𝘁𝘀 𝗳𝗿𝗼𝗺 𝘁𝗵𝗲 𝗘𝗣𝗔

So basically you, the taxpayer.
November 26, 2025 at 2:14 AM
🧵 7/11 Finally, though, winter irrigation is about to stop because of new wastewater lagoons that can hold >1.5 billion gallons at a time.

And nitrogen removal is now part of the flow.

All told these processing facilities cost ~$500 million.
November 26, 2025 at 2:14 AM
🧵 6/11 The nitrate levels are already absurdly high and folks get cancer or miscarry routinely.

Of course this disproportionately affects the working poor Hispanics who live in the area, mostly in mobile homes, and with wells that draw water at 1-8x the EPA nitrate limit of 10 ppm.
November 26, 2025 at 2:14 AM
🧵 5/11 And it has elevated a situation from bad to worse.

Ag waste + fertilizer have been seeping into the aquifer for 40 years.

Now with tens of millions of gallons of water discharge from the data centers each year and not enough storage, nitrates are accumulating and spreading even faster.
November 26, 2025 at 2:14 AM
🧵 4/11 ~15 years or so ago AWS moved in because of the

• 𝗰𝗵𝗲𝗮𝗽 𝗹𝗮𝗻𝗱
• 𝗰𝗼𝗼𝗹𝗲𝗿 𝗰𝗹𝗶𝗺𝗮𝘁𝗲
• 𝗮𝗯𝘂𝗻𝗱𝗮𝗻𝘁 𝘄𝗮𝘁𝗲𝗿
• 𝗿𝗲𝗻𝗲𝘄𝗮𝗯𝗹𝗲 𝗲𝗻𝗲𝗿𝗴𝘆
• 𝗹𝗮𝗰𝗸 𝗼𝗳 𝗻𝗲𝗶𝗴𝗵𝗯𝗼𝗿𝘀
• 𝗰𝗼𝗽𝗶𝗼𝘂𝘀 𝘁𝗮𝘅 𝗶𝗻𝗰𝗲𝗻𝘁𝗶𝘃𝗲𝘀
November 26, 2025 at 2:14 AM
🧵 3/11 It's also a place where greenwashing wins--here's looking at you Tillamook--and corporations construct museums like the Sustainable Agriculture and Energy (SAGE) Center.
November 26, 2025 at 2:14 AM
🧵 2/11 Anyone driving between Boise and PDX on I-84 knows the stench surrounding Boardman.

It's definitely a place you have to roll your windows up and put the recirc on because of all the methane and ammonia from CAFOs.
November 26, 2025 at 2:14 AM
Genuinely curious how something like this happens--is it a rogue employee, AI, or?

origami-kai.com/en/products/...
November 25, 2025 at 7:52 PM
Get Bo to perform
November 25, 2025 at 3:00 PM
Gmail signatures are pretty weird. They're HTML. Kinda?

You have to copy/paste rendered HTML and can't work with code directly.

Remote images are not respected unless you email your signature to yourself first.

And you cannot easily resize the window which is a pane. Sorry, pain. It's a pain.
November 24, 2025 at 11:20 PM
Did this project die? Their linked repo 404s and it's been 6+ months since a package has been published :/

www.npmjs.com/package/mdsx...
November 24, 2025 at 8:41 PM
Received an email from Embark about a new feature for customized care for your pet.

Small problem is that they try to personalize instructions by sexing your animal but fail to load the data properly.

At least she's used to it--one of her nicknames is Mister Noodle since it happens so much 🐕
November 24, 2025 at 6:43 PM
OKC is on one.
November 23, 2025 at 5:03 AM
@github.com anyone else have a ghost message like I do?
November 22, 2025 at 12:34 AM
If you did, and no data were present, dividing by 100 yields:

• d?.percentUnder18 → undefined
• undefined / 100 → NaN
• NaN ?? 0 → NaN

So ended up defaulting to a ternary operator instead.
November 21, 2025 at 11:30 PM
Today was the day I finally learned what the heck ?? does.

Was browsing around on LayerChart and saw some messed up percentages 😵‍💫

Dug in and found nullish coalescing wasn't done properly. In order to fix it I needed to understand how it worked.
November 21, 2025 at 11:30 PM
OK, TOON is cool—it's as if JSON, YAML, and CSV had a baby. toonformat.dev

Compact 𝘢𝘯𝘥 machine/human readable?!

It's still strange that LLM's aren't more accurate with it, though.

There's a lot of variability from model to model, but 𝐰𝐡𝐲 𝐚𝐫𝐞𝐧'𝐭 𝐭𝐡𝐞 𝐛𝐞𝐬𝐭 𝐨𝐧𝐞𝐬 𝐚𝐭 𝟗𝟗% 𝐢𝐧𝐬𝐭𝐞𝐚𝐝 𝐨𝐟 𝟗𝟎%??
November 20, 2025 at 5:32 PM
CF outage diag:

• 𝗯𝗮𝗱 𝗦𝗤𝗟 𝗾𝘂𝗲𝗿𝘆 returns loads of data
• 𝗹𝗮𝗰𝗸 𝗼𝗳 𝘁𝗲𝘀𝘁𝗶𝗻𝗴 and oversight allows prop in prod
• 𝗽𝗼𝗼𝗿 𝗲𝗿𝗿𝗼𝗿 𝗵𝗮𝗻𝗱𝗹𝗶𝗻𝗴 just panics instead of gracefully resetting
• 𝘀𝗶𝗺𝘂𝗹𝘁𝗮𝗻𝗲𝗼𝘂𝘀 𝗼𝘂𝘁𝗮𝗴𝗲 on CF status page leads team on wild goose chase

Sure, rewrite it in Rust, but not like that 🦀🫣
November 19, 2025 at 3:12 PM
When two separate non-profits reached out within the next couple weeks it was easy to identify where the issues were!

In both cases they had switched nameservers or hosting services without properly copying over their MX records, thus breaking email for everyone.
November 19, 2025 at 4:01 AM
After I double checked that all the right records were in the right places, I noticed that still something was missing.

The newsletters were sent via Klaviyo. All I had to do was add another record with a sending subdomain to make it nice and tidy, as if it were sent from the actual org itself.
November 19, 2025 at 4:01 AM
Ok, emails don't need sunscreen, but they do need protection because security, encryption , authentication, and validation were all afterthoughts. That's what each of those services provide.

And what of IMAP vs. POP3? Basically it's whether or not your emails live in the cloud or on your device.
November 19, 2025 at 4:01 AM
With that win, and a slowdown in my schedule, I was able to look into the reasons why some emails, especially newsletters, from an org were going to spam folders.

In the spring I saw it had something to do with SPF, DKIM, and DMARC and got scared by all the letters. Why did my email need sunscreen?
November 19, 2025 at 4:01 AM
So, I did the plumbing to link Resend with my domain and Gmail.

Essentially I use Resend's free SMTP and verify it in my DNS records. Now I can use Gmail as a client and also send emails on my website programmatically.
November 19, 2025 at 4:01 AM