HNHacker News
TopNewBestAskShowJobs

ku1ik

896 karma · joined December 13, 2010

[ my public key: https://keybase.io/sickill; my proof: https://keybase.io/sickill/sigs/OMk_FvR-OYsDPkz5wmQcnYQzK8RJhV5EdLgkkA4DUVo ]
submissionscomments
ku1ik··on We survived 10k requests/second: Switching to signed asset URLs in an emergency
Yup, pre-signing is fast and local, without any I/O. It’s just math. You could likely pre-sign thousands of URLs per second if you needed.
ku1ik··on Things I've learned building a modern TUI Framework (2022)
This.
ku1ik··on IRC Will Never Die (2021)
This.
ku1ik··on Building rqlite 9.0: Cutting disk usage by half
Got it, this makes sense. Thanks!
ku1ik··on Building rqlite 9.0: Cutting disk usage by half
Thanks, and sorry for mischaracterization. Glad to hear it’s different than I (wrongly) assumed. I’m curious though, if the design goals never changed and there was very little breaking changes, why the version is that high then? Not that you can’t use any numbering scheme you like, and not that semver is mandatory for every project. In hindsight I think my reaction came from assuming you use semver.
ku1ik··on Building rqlite 9.0: Cutting disk usage by half
Version 9.0 already? To me this unfortunately signals lack of focus and/or disregard for backward compatibility, which means unnecessary churn for me as user of this project. Hard pass.
ku1ik··on Show HN: Magic-cli – A copilot for your command line
I like the vision where next wave of LLMs will include this advice in its training set.
ku1ik··on Private Browsing 2.0
You know what’s also cool about this announcement? How clean, lightweight and unobtrusive that blog page is.
ku1ik··on Zed on Linux Is Here
Same here! Also, when it’s on the right toggling it doesn’t move the code panes left and right.
ku1ik··on Show HN: Drop-in SQS replacement based on SQLite
There’s more production systems on this planet running on a single node than ones running in a distributed setup. And SQLite is a rock solid database, deployed in more places than Postgres. The only thing here that could be taken when weighing production readiness would be the maturity and stability of this project itself.
ku1ik··on AirPods fast connect security vulnerability
Have you tried PipeWire? As long as bt driver for you adapter is decent PipeWire makes using all sorts of bluetooth audio devices a breeze. At least for me it works great, all the time.
ku1ik··on Claude 3.5 Sonnet
Yeah, I had an impression that 4o, while much faster, is a downgrade. For me it often starts repeating things over and over when I start questioning things.
ku1ik··on Claude 3.5 Sonnet
But that would be similar to using `latest` tag with docker images, which is rarely a good idea…
ku1ik··on Piku: Allows git push deployments to your own servers
This sounds super interesting! Do you have an example of such a config somewhere, that you can share?
ku1ik··on ht: Headless Terminal
ht uses asciinema’s avt as the underlying terminal emulator, so there wasn’t much re-invented here really. It was mostly glueing avt, PTY and JSON RPC together.
ku1ik··on I learned Vulkan and wrote a small game engine with it
/o\
ku1ik··on Is Microsoft trying to commit suicide?
You can run Windows in VM, e.g. with virt-manager, which is a nice GNU/Linux GUI for QEMU/KVM. I keep Windows contained like this, would never let it run directly on bare metal these days. I even used to game on this VM (before switching to Proton) with near-native performance after passing through a Radeon GPU to Windows.
ku1ik··on ht: Headless Terminal
You’re welcome :) The asset names got slightly weird in this release (and GH doesn’t let me change it because there’s a dot in the name and it prevents removal of file extension), but with a future release the GH action should name them better. But you would probably rename the downloaded file anyway.
ku1ik··on ht: Headless Terminal
I believe it’s a pretty good analogy, yes.
ku1ik··on ht: Headless Terminal
To expand on what andyk wrote in the sibling comment:

Programs running in a terminal don't get individual components of composite key presses such as ctrl+a, shift+b, so they don't see "a with ctrl modifier" or "b with shift modifier". The modifier keys are handled by terminal emulator before sending the key's ascii value to the program, modifying the regular ascii letters appropriately. So when "a" (ascii value 0x61) is pressed while holding shift, its ascii value is ... shifted (down) by a constant 0x20, making it ascii 0x41, which represents "A". Similar with ctrl key, which shifts down the ascii value by 0x60, turning "a" into 0x01. So to send "ctrl+d" you send input with a single byte of value 0x04 ("d" ascii 0x64 minus 0x60). ht uses PTY under the hood, and this is how you send keyboard input into to a program via a PTY. This is kinda low level though, and there's definitely a possibility of implementing a high level input method in ht, which would parse string such as "<ctrl+d>" and automatically turn it into 0x04 before sending it to the process.

In other words, the way input in ht works right now was the easiest, simplest way of implementing this to get it out the door.

ku1ik··on ht: Headless Terminal
Most sequences used by CLI apps that are supported by popular (widely used) terminal emulators are supported here, i.e. there's good compatibility with VT100/VT220/VT520/etc.

At the moment there's no support for mouse and clipboard - ht uses asciinema's avt for terminal emulation, where this was never needed (although may be added to avt if ht will need it).

Regarding the colors: internally there's full support for standard indexed colors (palette) and RGB. The "getView" call currently returns a plain text version of the screen buffer, stripped of all color information (plaing text is what andyk's headlong project, which uses ht, needs), but we can easily make it return color attributes for each cell or segment of text (either by modifying "getView", or adding complementary "getRichView" or sth like that).

ku1ik··on Sound-suppressing silk can create quiet spaces
This.

I moved to a countryside 2 years ago, escaping from city noise. Now, I’m going back (although to the outer, more quiet side of the city) because I’m going mad - lawnmowers, dogs, tractors, diesel generators, dogs, dogs, lawnmowers, dogs, …

ku1ik··on Ask HN: How do people create those sleek looking demos for startups?
If you use Nerd Fonts then you can select this on the recording settings page, or globally in your user settings.
ku1ik··on ESPHome
I love ESPHome! I turned my dumb standing desk into a smart desk with it (amongst dozen other things).
ku1ik··on DwarFS – Deduplicating Warp-Speed Advanced Read-Only File System
All tech aside, this is the best name for a filesystem, period.
ku1ik··on Lago, Open-Source Stripe Alternative, banks $22M in funding
Maybe I’m old and my feeling for what open-source means haven’t adapted to the changing reality, but whenever I see “open-source” and “$22 in funding” in one sentence I immediately think “open-source my ass”.
ku1ik··on Apple TV's Fantastic "Silo" Plays Out Like Great Sci-Fi Literature (2023)
I find it the same, cliché. It had great potential but after the first season I decided I’m not going to watch the next one.

Also agree on Severance - fantastic.

ku1ik··on How video games use lookup tables
Witchcraft!
ku1ik··on Asciinema 3.0 will be rewritten in Rust
Maybe the new `asciinema convert demo.cast demo.txt` command (in 3.0, develop branch) would be useful to you? It converts the session to plain text using avt (which is now embedded in the CLI).

You could grep like this:

asciinema convert demo.cast /dev/stdout -f txt | grep foo

ku1ik··on Asciinema 3.0 will be rewritten in Rust
The problem here is, at least on iOS, webkit on iOS doesn't support fullscreen API unfortunatelly. Once Apple fixes this it should just work (tm). Not sure about Android though (if it doesn't work for you on Android then let me know).
← PreviousPage 4 of 5Next →