Skip to content

Instantly share code, notes, and snippets.

@vkz
vkz / hoot.md
Last active May 8, 2024 07:15
Tailscale your AWS and on-prem resources: have your cake and eat it too

Tailscaling git.ht

This [hoot][] you're about to read started its life as a gist of technical minutae I had to discover to Tailscale cloud and on-prem resources. It'd be too boring for me to just publish it, so I thought I'd give a little bit of context as a preamble. I get to rant some and you can simply skip to the technical sections below if you'd rather not indulge me.

Ranty preamble

How much of what AWS gives you do you really truly need? It's become Kubernetes this, Docker that. I rarely question it when contracting because contractors usually arrive after the fact to pick up and carry the pieces. You get to target the infrastructure that may as well have been installed by alients before humankind ascended in Amazon. All in the cloud, can't touch, jumpbox this, terraform that, re-create the world every time you sneeze, etc. It's different when you're hired fo

@vkz
vkz / hoot.md
Last active April 6, 2024 02:50
Are LLM frameworks the new JavaScript frameworks? Have we learnt nothing?

LangChain considered harmful?

WARN: proof-reading this I realized good folks involved in LangChain may take offence. If it does come off rude or offensive, I'm sorry. FWIW it was all written in good spirit. I remain unapologetically Homo Sovieticus in my upbringing and therefore tone deaf. Especially in English. Musings of a tired old engineer. Don't read too much into it.

   

@vkz
vkz / windows-10-pro-smartos-bhyve.md
Created March 12, 2024 11:44 — forked from skirmess/windows-10-pro-smartos-bhyve.md
Windows 10 Pro Image for SmartOS Bhyve

Windows 10 Pro

Windows 10 Pro ISO

Create a fresh Windows 10 Pro ISO file with Microsofts Media Creation Tool. (I created a Windows 10 Pro 64 bit German ISO image)

Save the created image on your SmartOS global zone.

cp ... /zones/Windows10_64de.iso
@vkz
vkz / update_bions_lenovo_x1_g6.md
Created January 14, 2024 05:40 — forked from asamofal/update_bions_lenovo_x1_g6.md
Update BIOS on ThinkPad X1 Carbon Gen 6th (Ubuntu 18.04, Legacy mode)

Update BIOS on ThinkPad X1 Carbon Gen 6th (Ubuntu 18.04)

Laptop (ThinkPad) Lenovo X1 Carbon 6th Gen (Type 20KH, 20KG)

If you are using your ThinkPad X1G6 with Linux in "Legacy only" mode, there's only one way how to update BIOS - you should use "BIOS Update (Bootable CD)". So this is a step by step guid how to do it.

Check current BIOS version:

fwupdmgr get-devices

@vkz
vkz / bleval.clj
Created December 15, 2015 12:39
Clojure's `eval` and namespaces
;; Clojure's eval is dynamic with respect to current namespace.
;; If you ever find yourself in need of eval but want to avoid **wat**
;; moments here's hopefully an illuminating sequence:
user> (in-ns 'bla)
#namespace[bla]
bla> (refer-clojure)
nil
bla> (def x "bla")
#'bla/x
bla> (defn bleval [s]
@vkz
vkz / hoot.md
Last active December 7, 2023 15:53
Simplifying web forms with one `mailto:` trick

mailto: is all you need

Every time I touch frontend and do any sort of programming for the web, it leaves me near tears. Moment I venture out of the cozy backend into the insanity of the whole client - server interaction ... yaks - yaks everywhere. Latest offender is, well, forms. I feel like much of the well designed things happened early when www was only just making an appearance and since then we've squandered it. Or the designs ended falling on their faces when confronted with evil agents and spam.

As I see it, there are four primary types of user interactions through forms:

@vkz
vkz / hoot.md
Last active July 31, 2023 20:59
Could GitHub Copilot and ChatGPT become your tech co-founders?

Launching solo: TAB-driven product development with GitHub Copilot (episode 0)

To LLM perchance to dream

I finally gave in and decided I should take LLMs for a serious spin. Not quite ready to surrender to the likes of GitHub Copilot but I feel like the time has come to give em enough room in my toolkit to truly evaluate their potential. I've largerly remained on the sidelines of the most recent LLM drama as it evolved into a more or less global phenomenon. I can't even tell if we've reached the top of the hype and riding the wave or still climbing - my Twitter has been drowning in all things LLM for months now. It basically rendered For You feed useless - no human can keep up with updates coming in so frequently, nor can one accurately judge their significance. I haven't had a chunky enough task to try them in earnest anyway. Until now. See, I have a severe case of *busine

@vkz
vkz / hoot.md
Last active July 4, 2023 10:06
Git hooting and bring back RSS one GitHub gist at a time - no rate limiting

Are Zoomers too dumb to figure out RSS?

RSS

Is the title clickbaity and iflammatory enough? FWIW I wasn't the one to express the sentiment nor do I share it. This [hoot][] was prompted by the Twitter exchange that you can see on the side here. Which, I believe, got triggered by yet another Elon-induced Twitter-verse drama. It was rate-limiting this time. This happens often enough now that I just put the phone aside and come back when emotions settle down and the service works again. I for one think Twitter and micro blogging in general absolutely have room to exist even when, personally, I'm more partial to longer form writing, where longer need not apply to the word cound you output necessarily. In my experience there is correlation between how much thought you put in vis-a-vis how many coherent paragraphs you produce. Anyway, back to RSS and Gen-Z.

@vkz
vkz / hoot.md
Last active June 29, 2023 11:05
TailOps: compute in your closet - deliver via web utility companies like AWS, GCP, Azure, CloudFlare. Take to the cloud with DevOps or deliberately drive your cloud footprint to a minimum with TailOps.

TailOps - less cloudy DevOps in the age of ChatGPT

Now that I've committed a few of my experiences launching [git.ht][] to a written word, a pattern has emerged in a way I approach DevOps. By happy coincidence it also acquired a name of its own. As I was writing [episode 3][] in the series, I guess, my brain must've gaffed and so the term TailOps was born, where clearly I meant to write DevOps. [Tailscale][] has become a vital part of GitHoot's infrastructure that ties everything together - only natural that my mind slipped. I'm having trouble resetting my brain, so I guess I'm stuck with it. It got me thinking. It is admittedly fuzzy and ill defined and likely to remain thus. Wouldn't hurt to explore and reflect some. Then, who knows, TailOps might just become a thing and start a life of its own.

Let's make this [hoot][] one, where I indulge in philosophy, make hand-wavy statements and share observations supported by like a single data point. My hoot - my rules. Here goes.

Life after [Tailsca

@vkz
vkz / hoot.md
Last active June 6, 2023 20:17
What does SSH has to do with GitHoot, blogging and AWS CloudFront? CDN caching is vital for static resources like blog posts or RSS and Atom feeds. They can be tricky to setup when you need to re-deploy every time you change anything cache related in your code. SSH can help with that. In this blog post we'll configure CloudFront caching live, ri…

Debugging AWS CloudFront issues live with SSH

[git.ht][] relies heavily on CDN caching. We use AWS CloudFront, but it'll work similarly for CloudFlare or another CDN. Hardly a surprise seeing how [GitHoot][] is almost but not quite a blogging platform. There are a few good candidates for caching. We emphasize and nudge people towards RSS, cause, let's face it - RSS (or Atom) delivers cleaner and superior experience to your readers compared to whatever blog central du jour is in vogue. But then this knowledge, quite common in 1990s-00s, is rapidly going away. That aside. RSS feed is nothing more than an XML document. Naturally, we'll want to cache it. These feeds are unlikely to change often, I mean, how often do you blog? Not often enough, if you ask me, go check out [git.ht][] right now. Once we fetch your GitHub gists, we turn them into hoots - pages