Lethalman
Lethalman on Hacker News
How is this different than k8s jobs?
I need to login to see anything. I walk away.
It was also incredibly difficult. As a kid I couldn’t go beyond the first level. It was also difficult to attack the enemy at the right time.
But still it was an amazing experience whenever I played it. I felt the pressure and the need to start again like no other game nowadays.
But maybe that’s just because I was a kid.
“Written in X”. Every time I look elsewhere when I see it. When is people starting to think about features instead of “it’s better because I rewrote it in X!!”
A web fetch is not much different than asking an MCP for its tools, right?
Posted by
Lethalman on Thursday May 07, 2026 @03:43AM
from the self-post dept.
1. Give your AI client a wrapper to "curl" that does validation of what API methods and endpoints is allowed to hit2. Tell your AI to download web docs and use html2text + grep + head + tail to discover what it needs.Seriously, it just works. No need for everyone to reinvent its own MCP server. No need to put your whole documentation every time in the prompt. Just improve what you have:- Add...
Posted by
Lethalman on Sunday April 12, 2026 @04:05AM
from the ask-hn dept.
This is a question for code reviews inside a company, not public repos.AI has clearly increased the throughput of code changes, which is good. Now you don’t just work on your main task but can also fix or improve small things on the side.Let’s say before AI a dev would send 1 PR/day, now with AI it’s 2 PR/day.The problem is that the review throughout did not increase. AI reviewing code is...
Wish it wasn’t rust… it’s so hard to read.
> To ensure monotonicity, retrieval of the idempotency key and emitting a message with that key must happen atomically, uninterrupted by other worker threads. Otherwise, you may end up in a situation where thread A fetches sequence value 100, thread B fetches sequence value 101, B emits a message with idempotency key 101, and then A emits a message with idempotency key 100\. A consumer would then, incorrectly, discard A’s message as a duplicate.
Also check out Lamport vector clocks. It solves this problem if your producers are a small fixed number.
I think it's because the docs say "If there isn't enough memory, you can't run a JOIN." . While SQL on Hadoop solutions work also without enough RAM by spilling on disk. I don't think a comparison with JOINs would be fair in this case.
Posted by
Lethalman on Monday May 16, 2016 @07:07AM
from the labs.immobiliare.it dept.
You are right. It's unfair, I'm going to modify the post to mention alpine.
The post is both about tiny images AND how to build docker images with nix. I think it was an interesting tooling to make for our community. Some Nix people are already using it for obvious reasons.
The blog post code is supposed to run with latest master since a few days. We've merged a big change that leads to reducing a lot the closure of our packages.
Nix moves fast enough, in the sense we usually do a good job at not breaking things. Yet we have to necessarily introduce innovations in our frameworks.
You don't need in fact. But sometimes you are forced to use Docker anyway.
Posted by
Lethalman on Friday April 15, 2016 @04:45AM
from the lethalman.blogspot.com dept.
Always liked and used LyX, and never looked back. LaTeX is not for humans in my opinion, nobody should ever write LaTeX by hand.
How Nix solved the issue:
1. Each go package has an attribute name in nix, like anything else, that is not tied to its url.
2. Each go package has an url where to fetch the source from, which is not the import path to use the package.
3. Each go package has a number of old import url aliases (e.g. "code.google.com/...")
4. Whenever a package X depends on Y with an old import url, then X is rewritten to use the new url path of Y using govers.
So the problem is solved at our packaging level.
This is not to say it's the best solution, but certainly a good alternative solution.
Sorry, where is it said they will stop development of Persona? The homepage and the service seem to be in full health, there's no warning anywhere for users of Persona.
Is there any official statement that Persona will shut down?
I've looked at knex. But I felt it not to be as composable as sqlata.
In knex operators are written with .where() itself. Also it doesn't manage table aliases apparently. And it's quite tied to an underlying connection as I can see.
But yes, all the sql bulders out there are quite similar, but there are notable differences compared to sqlata if you look deeper.
Posted by
Lethalman on Thursday November 19, 2015 @05:29AM
from the show-hn dept.
You also upgrade grub versions I hope :) Or maybe improve the grub installation scripts.
Things you must be afraid when using nix:
1) If you install a bad grub, you cannot rollback it using nix. That means, not a wrong grub line, but if grub itself is broken.
2) Anything that is not under nix control, the data: like desktop configurations, databases, ecc.
It's a different approach. That's basically an implementation using ostree. Nix is way different than that. Neither is better in my opinion, but I use Nix happily.
There's a /bin/sh because libc needs it, but we're going to remove that one too in the future somehow.
But /usr/bin/env is in nixos to make it easy for people to run scripts. But packages never use /usr/bin/env, it's just there for convenience.
So I haven't seen yet in the website a code sample showing how a simple ping-pong actors would communicate, so I can't even test quickly if this is possible with the language.
If the program can implement a lock between the two actors, then your language is not deadlock free. Even a loop by checking if some variable has changed by the other actor (if possible in this language, I still don't even know by the deep lack of examples), and the other actor doing the same thing, that can be claimed as deadlock.
Stopped being interested after reading "It's deadlock free!", "because Pony has no locks at all"... yeah but actor X waiting for actor Y which waits for actor X is a deadlock. It's not a matter of lock primitives, it's a matter of software. (yes, x-comment from reddit)
Missing Nix/NixOS/NixOps :( Which is build, continuous integration, deploy, configuration management and provisioning. Everything with a single language.