HNHacker News
TopNewBestAskShowJobs

cipherself

181 karma · joined June 3, 2023

https://mohamed.computer/ https://synmach.com/
submissionscomments
cipherself··on WAL-RUS: a Rust Rewrite of WAL-G for PostgreSQL Backups
The article’s distinction about memory is a bit too simplified. Virtual memory is address space mapped or reserved by the process. RSS is resident physical pages, not necessarily “actively used.”. RSS also overcounts shared memory, which is why PSS/USS matter.
cipherself··on On Rendering Diffs
For anyone else who's suffering, paste this in the console in devtools:

  document.getElementsByTagName('main')[0].style.margin = '0 auto';
cipherself··on Project Genie: Experimenting with infinite, interactive worlds
It's quite exciting how far we've come from the modern exposition of world models by David Ha and Jürgen Schmidhuber in 2018 https://worldmodels.github.io/
cipherself··on Ask HN: How are you doing RAG locally?
Here's a Dockerfile that will spin up postgres with pgvector and paradedb https://gist.github.com/cipherself/5260fea1e2631e9630081fb7d...

You can use pgvector for the vector lookup and paradedb for bm25.

cipherself··on Ask HN: Share your personal website
https://mohamed.computer
cipherself··on Ask HN: What are you working on? (January 2026)
I am trying to get the TLA+ tools to run completely in the browser https://github.com/tlaplus/tlaplus/tree/master/tlatools
cipherself··on Five Years of Tinygrad
I don't think this is bad, if you know Python then most of the code will be fine for you. I think you're probably referring to pm_reduce_collapse, but while it looks daunting at first, it really isn't when you consider the alternatives, I'd be curious on how you'd improve it short of creating a DSL.
cipherself··on Parsing Advances
I have written parsers using parser combinators in Haskell and Clojure. I find that ML-like (Haskell, OCaml, StandardML) languages generally are great at writing parsers, even hand-written ones in it is a superior experience.

In this case, this was a project at $EMPLOYER in an existing codebase with colleagues who have never seen Haskell code, using Haskell would've been a major error in judgement.

cipherself··on Parsing Advances
One anecdote in the same vein, a couple of months ago, I wanted to parse systemd-networkd INI files in Python and the python built-in ConfigParser [0] and pytest's iniconfig parser [1] couldn't handle multiple sections with the same name so I ended up writing 2 parsers, one using a ParserCombinator library and one by hand and ended up using the latter given it was much simpler to understand and I didn't have to introduce an extra dependency.

Admittedly, INI is quite a simple format, hence I mention this as an anecdote.

[0] https://docs.python.org/3/library/configparser.html

[1] https://github.com/pytest-dev/iniconfig

cipherself··on Capsudo: Rethinking sudo with object capabilities
I have used systemd services before to do this to run an application, I had a user created specifically for the application, and I defined the capabilities the application needed via CapabilityBoundingSet and AmbientCapabilities [0] and I used a lot of stuff from [1] to restrict the application e.g. the sandboxing facilities, restricting the allowed syscalls [2], ...etc. systemd also comes with a useful command systemd analyze security [3]

[0] https://www.freedesktop.org/software/systemd/man/latest/syst...

[1] https://www.freedesktop.org/software/systemd/man/latest/syst...

[2] https://www.freedesktop.org/software/systemd/man/latest/syst...

[3] https://www.freedesktop.org/software/systemd/man/latest/syst...

cipherself··on Building a Simple Search Engine That Works
That was a great book, I wonder what the 2025 equivalent of it is...
cipherself··on Show HN: Spam classifier in Go using Naive Bayes
12 (13?) years ago I had also written a Naïve Bayes classifier in Perl https://github.com/cipherself/NaiveBayes_perl

IIRC, next thing on my TODO list was to add vectorization. Also (like OP) it uses log probabilities to avoid floating-point underflow.

cipherself··on Heartbeats in Distributed Systems
10 years ago I've implemented SCAMP (a gossip protocol) in Clojure, you might find it interesting, the implementation is quite small https://github.com/cipherself/gossip
cipherself··on How often does Python allocate?
> I recommend using the `dir` function in a REPL

A while back I wrote this https://mohamed.computer/posts/python-internals-cpython-byte..., perhaps it's interesting for people who use `dir` and wonder what some of the weird things that show up are.

cipherself··on Production RAG: what I learned from processing 5M+ documents
Assuming that's what he meant, why would it be considered baseline versus anything else? I am genuinely curious because I'd like to know more about issues people face with this or that vector store in general.
cipherself··on Code from MIT's 1986 SICP video lectures
Moreover, you can have SICP inside emacs by just downloading a package from Melpa:

https://melpa.org/#/sicp

cipherself··on Production RAG: what I learned from processing 5M+ documents
Got it, I think this might make sense for a "conversation" type of search not for an instant search feature because lowest latency is gonna be too high IMO.
cipherself··on Production RAG: what I learned from processing 5M+ documents
S3 Vectors is hands down the SOTA here

SOTA for what? Isn't it just a vector store?

cipherself··on Production RAG: what I learned from processing 5M+ documents
I am working on search but rather for text-to-image retrieval, nevertheless, I am curious if by that's all baked into Azure AI search you also meant synthetic query generation from the grandparent comment. If so, what's your latency for this? And do you extract structured data from the query? If so, do you use LLMs for that?

Moreover I am curious why you guys use bm25 over SPLADE?

cipherself··on Docker Hub Is Down
While I haven’t tried --pull=missing, I have tried --pull=never, which I assume is a stricter version and it was still attempting the HEAD request.
cipherself··on Docker Hub Is Down
I’ll admit I haven’t checked before posting, perhaps an admin can merge both submissions and change the URL on the one you linked to the one in this submission.
cipherself··on Docker Hub Is Down
In the case where you still have an image locally, trying to build will fail with an error complaining about not being able to load metadata for the image because a HEAD request failed. So, the real question is, why isn't there a way to disable the HEAD request for loading metadata for images? Perhaps there's a way and I don't know it.
cipherself··on Mother of All Demos (1968)
There was a way to experience this demo interactively https://dougengelbart.org/content/view/374/

Unfortunately, it seems like it's not working properly anymore. I just messaged Bret Victor and maybe he can get it back in working order or can reach out to someone.

cipherself··on ApeRAG: Production-ready GraphRAG with multi-modal indexing and K8s deployment
In the list of features, it mentions:

> vision-based search for comprehensive document understanding

but it's not clear to me what this means, is it just vector embeddings for each image in every document via a CLIP-like model?

In addition, I'd be curious what's the rationale behind using the plethora of databases, given the docs on running it in production spins them all up, I assume they're all required, for instance I'd be curious on the trade-offs between using postgres with something like pg_search (for bm25 support, which vanilla postgres FTS doesn't have) vs using both postgres and ElasticSearch.

The docs are also very minimal, I'd have loved to see at least 1 example of usage.

cipherself··on Autology: A Lisp with access to its own interpreter
This in turn, is based on black[0] which is an extension to scheme, which in turn is inspired by [1]

[0] http://pllab.is.ocha.ac.jp/~asai/Black/

[1] https://www.lirmm.fr/~dony/enseig/MR/notes-etudes/Reflective...

cipherself··on Pygfx
Pygfx uses webgpu while VisPy uses OpenGL.
cipherself··on Test and learn how DMARC, SPF and DKIM work
This is ~albeit not being very deep~ very cool.
cipherself··on Encore: Distributed systems runtime for TypeScript, written in Rust
I'm curious, why would that be worth mentioning?
cipherself··on Virtual Power Plants and Software
Nice, thanks. I've download the "Full Report" and will give it a read.
cipherself··on Virtual Power Plants and Software
Very cool, ordered :)
Page 1 of 2Next →