HNHacker News
TopNewBestAskShowJobs

Lanedo

127 karma · joined July 31, 2013

DSP, data structures, algorithms. meet.hn/city/de-Hamburg
submissionscomments
Lanedo··on Fahrplan – 39C3
If you see the Opening Ceremony starting at 10:30, then yes.
Lanedo··on Jujutsu at Google [video]
The full JJ Con playlist is: https://www.youtube.com/playlist?list=PLOU2XLYxmsILM5cRwAK6y...
Lanedo··on Modal editing is a weird historical contingency through sheer happenstance
If vi didn't exist, it would not have been invented.
Lanedo··on Why JPEG XL ignoring bit depth is genius (and why AVIF can't pull it off)
> Find the (minimal) AI prompt that lead to the generation of this article: [...]

The minimal AI prompt that likely led to the generation of this article could be:

"Write a technical blog post comparing JPEG XL and AVIF image formats, focusing on how JPEG XL's bit-depth-agnostic float-based encoding is superior to AVIF's integer-based approach, with emphasis on perceptual quality, HDR handling, and workflow simplicity."

This prompt captures the core elements:

- Technical comparison between two image formats

- Focus on JPEG XL's unique "ignoring bit depth" design

- Emphasis on perceptual vs. numerical quality

- Discussion of HDR and workflow benefits

- Tone and structure matching the published article

The prompt would have guided the AI to produce content that:

1. Explains the technical difference in encoding approaches

2. Demonstrates why JPEG XL's method is better

3. Provides real-world implications for users

4. Maintains the author's voice and technical depth

5. Follows the article's structure and emphasis on "perceptual intent" over bit precision

Lanedo··on Magit Is Amazing
I find JJ to make things much easier for me than Git:

- No staging needed, edit your commit directly in your working directory

- Rebasing is automatic, I regularly edit historic commits and the messages

- jj absorb will automatically split and merge hunks into related ancestry commits

- Defer conflict resolution; many conflicts are resolved later by splitting/squashing/moving commits/hunks further (possible only for first-class conflicts)

- No interactive rebase needed, since jj commands automatically rebase while editing historic commits, it feels like constantly living within an interactive rebase

- Easily refer to the same revision (change) across rebase commands by using a jj change_id, without scribbling down Git commit hashes that change across a rebase

- Easily undo (+redo) your last commands through the jj operation log without having to backup the entire git repo at each step

And jj-fzf (https://github.com/tim-janik/jj-fzf/) gives me every useful jj command with a single hotkey (e.g. Ctrl-P for push, Ctrl-N for a new commit with 1+ parents, Alt-B to edit bookmarks/tags, Alt-R to rebase, Alt-Z for undo, …) while browsing the log with commit+diff preview.

Lanedo··on Bypassing Watermark Implementations
It is not too surprising that many HTML or JS based watermarking schemes are very easy to remove, some even via a script. For watermarking schemes to be effective, the watermark payload needs to be embedded in the content. Here's one approach that works for images: https://github.com/tim-janik/imagewmark/

Another that works for audio content is: https://github.com/swesterfeld/audiowmark

Incidentally, the latter also supports applying the watermark payload to HLS segments.

Lanedo··on Llama.vim – Local LLM-assisted text completion
There is https://github.com/copilot-emacs/copilot.el that gets copilot to work in emacs via JS glue code and binaries provided by copilot.vim.

I hacked up a slim alternative localpilot.js layer that uses llama-server instead of the copilot API, so copilot.el can be used with local LLMs, but I find the copilot.el overlays kinda buggy... It'd probably be better to instead write a llamapilot.el for local LLMs from scratch for emacs.

Lanedo··on Ask HN: Git Alternatives – Sapling vs. Jj
For a quick impression, the jj-fzf README has a number of screencasts that showcase tasks easily accomplished with jj (using fzf to preview the jj log and key bindings to invoke jj commands):

https://github.com/tim-janik/jj-fzf?tab=readme-ov-file#split...

(Another self-promotion)

Lanedo··on GitHub was down
Github seems to be coming back up:

https://downdetector.com/status/github/

Lanedo··on GitHub was down
Twitter now has:

We are experiencing interruptions in multiple public GitHub services. We suspect the impact is due to a database infrastructure related change that we are working on rolling back.

https://x.com/githubstatus/status/1823864449494569023

Lanedo··on Sieve is simpler than LRU
Wouldn't a hand that follows the head at an offset of ca 10% of the ring buffer size be mimicking the S3-FIFO quick demotion threshold and likely reap the same kind of benefits?
Lanedo··on GitHub will disable non-2FA accounts?
Speaking of solutions, when you want to avoid using a phone, there is oathtool. For example for a GitHub 2FA Link like this:

  otpauth://totp/GitHub:username?secret=BLAHBLUBBLAH&issuer=GitHub
You extract the secret and use it like this:

  oathtool --totp=sha1 --base32 BLAHBLUBBLAH
  268685
Lanedo··on Design of a low-level C++ template SIMD library [pdf]
This would deserve an upvote if the code was legally usable.

Since it's not too easy to spot, the paper refers to http://www.ti.uni-bielefeld.de/html/people/moeller/tsimd_war... and that page has a "Software Download" section with a custom license that has significant arbitrary restrictions:

* "agrees not to transfer [...] to other individuals"

* "agrees not to use the software [...] where property of humans [is] endangered"

* etc.

I.e. this "contribution" would only be relevant if was usable under a really free license, e.g. one of: https://www.gnu.org/licenses/license-list.html#SoftwareLicen...