Sign up

Karn Wong

Not verified No WebSub updates No webmention support Not yet validated

Homepage and blog by Karn Wong

Generator
Zola
Public lists
I ♥ RSS
Fetched

Karn Wong
• Unknown

2025-07-23

Was renaming env var and my IDE updated it in my sops file, and it bricked the file. Good to know that the key name is taken into the checksum as well.

Karn Wong
• Unknown

Terraform project structure

Recently I gave a terraform talk, and people ask how to get started with terraform. The simple answer is to try to get your hands dirty with it, but at certain point you have to learn how to "manage" the ever-growing terraform project. Single-project structure In the beginn...

Karn Wong
• Unknown

The true cost of deploying on EC2

Naturally, when you are working on a project, be it python, go, rust, you would write code and make sure it works as expected. For deployments, packaging your project into a docker image and deploy it as a container would guarantee that it would work the same regardless of w...

Karn Wong
• Unknown

2025-07-17

Recently gave a talk about IaC and FinOps. People couldn't agree on who should own cloud cost optimization initiative. But if you ask me, it's a team sport :) Also, if finance isn't monitoring the numbers, high cloud costs would be the least of your worries. https://speakerd...

Karn Wong
• Unknown

2025-07-14

I'm in the "labels don't define your camp" in case it isn't obvious. But you are more than the sum of all parts.

https://www.freyaindia.co.uk/p/nobody-has-a-personality-anymore

Karn Wong
• Unknown

2025-07-12

Recently gave a talk about WASM. Mostly a tour on deployment infrastructure 😛

https://speakerdeck.com/kahnwong/bkk-dot-js-number-23-intro-to-wasm


สไลด์ของวันก่อนที่ไปแชร์เกี่ยวกับ WASM มา

มีคนถามเยอะ ว่า ตอนไหนควรใช้ WASM

เลยมีเพิ่มหน้าเล็กน้อย

จริงๆ คือพาทัวร์ ว่า ตอน production ใช้ท่าไหนได้บ้าง

https://speakerdeck.com/kahnwong/bkk-dot-js-number-23-intro-to-wasm

Karn Wong
• Unknown

Dataframe processing benchmarks (ภาษาไทย)

English ช่วงหลังๆ มานี้ duckdb กับ polars มาแรงขึ้นเรื่อยๆ พ่วงมากับการที่ parquet เป็นที่นิยมมากขึ้นในการใช้เก็บข้อมูล เลยว่าเป็นฤกษ์ดีในการมาดู ว่า data format กับ framework จะมีผลกับความไวในการปั่นข้อมูลขนาดไหน Processing 1 Million Rows สำหรับการ transform ข้อมูลแบบง...

Karn Wong
• Unknown

Dataframe processing benchmarks

ภาษาไทย Given the rise of duckdb and polars in recent years, in addition to parquet format being more widely adopted for data storage format, it might be a good time to see how source data format affects data processing speed - in addition to the framework choice. Process...

Karn Wong
• Unknown

Simplify SSH (and HTTP & Postgres) access management with Warpgate

Background If you have to work with virtual machines (VMs), you know the drill: disable password authentication and only allow private key authentication. If you want to sleep better at night, make the VMs only accessible through a private network to reduce the attack surfa...

Karn Wong
• Unknown

2025-06-26

Finally! Back then we had to manually assign lochash to all datasets we have to join, and it's a lot of stuff to keep track!

H3 makes things better but still it's not as smooth as I'd like it to be. Data mapping is messy.

https://overturemaps.org/announcements/2025/overture-maps-launches-gers-a-global-standard-for-interoperable-geospatial-ids-to-drive-data-interoperability/


ชาว GIS จะสบายแล้ว

เมื่อก่อนจะเอาแต่ละอย่างมาผูกกัน ต้องไล่เช็ค zoom level (สมัยก่อนมี H3) แล้วต้องตี grid กะให้ขนาดพอดี แล้วงอก mapping column มาผูกกันข้าม dataset

join แล้ว join อีก join จนท้อ กว่าข้อมูลจะพร้อมให้เอาไปแงะ (เหนื่อยอีกทีตอนเช็คว่า ผูกตรงกันมั้ย กับ ทุก dataset)

https://overturemaps.org/announcements/2025/overture-maps-launches-gers-a-global-standard-for-interoperable-geospatial-ids-to-drive-data-interoperability/

Karn Wong
• Unknown

2025-06-25

I'm eval-ing a tool where you can upload artifacts to it. The docs say you can use toolA, toolB, toolC to upload, but it doesn't mention anywhere that you can also use toolX for this (and toolX is more popular and widely used). Very turf war vibe.

Karn Wong
• Unknown

2025-06-24

Recalled this prod story. Had to restart a container on a vm to update its config (can also be changed via ui). Previous guy set it up, and he left the org by then, luckily we can ssh into the vm. We restarted container, only to find out that the docker run command didn't mo...

Karn Wong
• Unknown

Using Nix for CI, but with a twist

CI (continuous integration) is kind of tricky in a sense that each CI vendor has its own implementations, often glued together via yaml configurations. If you have a CI to build a binary, unless you use bash to 1) install dependencies and b) build the artifacts, most likely ...

Karn Wong
• Unknown

Hello Garage, goodbye MinIO

Given the trend where open-source software license changes to be less permissive, or move features behind a paywall, existing users might not be quite as happy about this predicament. Case in point: MinIO Removes Web UI Features from Community Version, Pushes Users to Paid P...

Karn Wong
• Unknown

Cloudflare's terraform v5 provider migration strategy

Back in February 2025, Cloudflare announced that its terraform v5 provider is GA. However, this release contains a lot of breaking changes, but I understand why it had to be this way - because it's less work if you generate a terraform provider via OpenAPI specs. The v4 to v...

Karn Wong
• Unknown

Model inference in ONNX

Everyone agrees that python is great for data stuff, be it data engineering or machine learning. Although rust is gaining more traction for data-related applications, python is here to stay. Those who venture into machine learning are at least familiar with sklearn - a popul...

Karn Wong
• Unknown

My code search setup throughout the years

Initial Setup Around 2022-23, I was browsing awesome self-hosted and came across Sourcegraph, a popular code search tool. I don't plan to pay, and they allowed self-hosting, so it was perfect for me at the time. Then you still can't search code in GitHub (which we used for ...

Karn Wong
• Unknown

2025-05-07

Poking holes into websites is my version of fun. People act like I grow two heads when I say I do it to relieve stress.

Oops.

And when I deploy a lot of new services to my kube cluster at home, yup that’s my peak stress and I need to let off some steam.

Karn Wong
• Unknown

WASM FFI performance benchmark

WASM is known for being very portable because the only thing it asks for is a browser runtime. This means it doesn't matter if you have machines on linux/amd64, windows/amd64, darwin/aarch64, WASM can run on all these platforms without required modifications. WASM can be u...

Karn Wong
• Unknown

2025-04-02

Happy to say I'm a direnv convert. No more setting up dotenv for every project I work on is a godsend (and especially when you write in multiple languages this gets old real fast).

Karn Wong
• Unknown

2025-03-15

I had this android tablet since 2019-ish, the last official update was android 8, so I thought why not flash Lineage on it.

Turns out I can't unlock bootloader because the [device region] and [account region] are not the same.

Yup, no longer buying devices from this manufacturer.

Karn Wong
• Unknown

WASM deployment benchmark

Correction 2025-06-16: there was a calculation error for artifacts size difference, it has been fixed. Previously, we've seen how WASM performs. But what about delivery methods? This means runtime overhead as well, because executing a raw binary vs container means startup t...

Karn Wong
• Unknown

Migrate from Docker Desktop to Podman on Darwin

Lately Docker Desktop on Mac behaves weirdly, namely its erratic memory consumption. Not willing to babysit the memory usage, I looked into alternatives, and found a few contenders: Colima, Podman and Orbstack. Being an open-source aficionado, naturally I gravitate to Colima...

Karn Wong
• Unknown

2025-02-21

Was writing down vendors list from a security conference I attended last month.

There's this one vendor, where their website at www is fine, but if you access it without leading www, it shows you an admin page. Hoo boy.

And their SSL cert is not valid!!!!! 😬

Karn Wong
• Unknown

Cross-platform keyring-like setup (also works without desktop environment)

Sometimes, running an application requires you to supply a password, or something along these lines. If you have a terminal-based workflow, sometimes it can require an authentication token. These configurations would need to be supplied either at runtime or stored somewhere ...

Karn Wong
• Unknown

2025-02-11

It's very amazing with the amount of work put into Proton engine for running windows games on linux.

I installed a game from 2015-ish with native linux port - the screen stutters when I move the camera, and it crashes very often. But if I run this game through Proton, zero issues!

Karn Wong
• Unknown

2025-02-06

I'll never forget that time when my Intel NUC was running hot on idle (70 C). I removed a lot of workloads from it, still high temp.

Turns out the culprit was accumulated dust. Turned it off, blow it from every angle. Lo and behold, the idle temp is now at 50 C.

Karn Wong
• Unknown

2025-02-01

Upside from running Linux as my desktop setup is that I never run into BSOD.

Compared to when it was running Windows, occasionally it would get BSOD, sometimes in a middle of a gaming session 🥹

Karn Wong
• Unknown

2025-01-30-1

I set up a custom-domain email for my family to use (name@lastname.com)

a year went by, and I got a request to "shorten" the email address"

The part they want it to become shorter is, you guessed it, the "domain" part

She wanted it to be just $name@wong.com

You see where this is going 🤣

Karn Wong
• Unknown

2025-01-30-2

Recently discovered the existence of QUIC and HTTP3. Modern, yes. Standardized, yes.

Turns out caddy's default already utilizes HTTP3. Modern technology is awesome. Gone were the days of manually setting up SSL and auto-renew cron.