Top all-time · #18462
Alex Makelov
Personal blog · amakelov.github.io/blogaiprogramming
Alex Makelov's personal blog at amakelov.github.io covers ai and programming. Since 2023, 4 different Hacker News readers have linked it 10 times, most often “Mandala: Python programs that save, query and version themselves”. No feed was found, so read it on the site itself.
Too few sampled comments (1) to say how often HN recommends it.?
Why HN links it
HN readers link Alex Makelov's blog for its posts on Mandala, his tool for versioning computational graphs and memoizing results in ML experiments. One commenter says the posts changed how they think about code.
Summarised by Claude from a sample of 1 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Personal website of Alex Makelov - researcher in mechanistic interpretability of large language models.
Most-linked posts?
- Mandala: Python programs that save, query and version themselves2 people · 2 mentions · first linked 2023-04-15
What Hacker News says?
Thanks for sharing! This is a great project. It is quite close to the memoization part of `mandala` and I'll add it to the related work in the README. I think the similarities are: - using `joblib` to hash arbitrary objects (which is a good fit for ML which inlcudes a lot of numpy arrays, which joblib is optimized for) - how composition of decorated functions is emphasized - I think that's very important - wrapping…
Comment linking /blog/deps/
on “Show HN: Mandala – Automatically save, query and version Python computations”Submitted Practical dependency tracking for Python function calls as a story · 3 points
HN discussionGreat question! The versioning system does something essentially equivalent to what you describe. It currently works as follows: - When a call to an `@op` is executed, it keeps a stack of @track-decorated functions that are called (you can add some magic - not implemented currently - via import-time decoration to automatically track all functions in your project; I've opted against this by default to make the system…
Comment linking /blog/deps/
on “Show HN: Mandala – Automatically save, query and version Python computations”Submitted Tidy Computations as a story · 2 points
HN discussionThanks! Yes I think a caching solution like this is great for notebooks, because it makes it very cheap to re-run the whole thing (as long as you reasonably organized long-running computations into `@op`s), overcoming the notorious state problem. Graphviz is indeed a lifesaver; and you can similarly think of `mandala` as a "build system for Python objects" (with all the cool and uncool things that come with that; se…
Comment linking /mandala/tutorials/gotchas/
on “Show HN: Mandala – Automatically save, query and version Python computations”Submitted Mandala: Python programs that save, query and version themselves as a story · 2 points
HN discussionThis blog port gives an overview of the core dependency tracking logic: https://amakelov.github.io/blog/deps/
Comment linking /blog/deps/
on “Show HN: Mandala – Automatically save, query and version Python computations”Submitted Practical dependency tracking for Python function calls as a story · 1 points
HN discussionIn order, 1. Yes, you can choose to create a persistent storage by passing `db_path` to `Storage()`. The current implementation is just an SQLite file. To run on many machines, you don't really need to be able to re-import from a dataframe (dumping to a dataframe is meant to be an exit point from `mandala` so that you can do downstream analyses in a format more familiar than `ComputationFrame`) - `ComputationFrame`s…
Comment linking /mandala/blog/01_cf/
on “Show HN: Mandala – Automatically save, query and version Python computations”Another option, that manages versioning of your computational graph and its results and provides extremely elegant query-able memoization is Mandala https://github.com/amakelov/mandala It is a much simpler and much more magical piece of software that truly expanded how I think about writing, exploring, and experimenting with code. Even if you never use it, you probably would really enjoy reading the blog posts the a…
Comment linking /blog/pl/
on “ML Experiments Management with Git”