HNHacker News
TopNewBestAskShowJobs

arialdomartini

170 karma · joined March 6, 2020

submissionscomments
arialdomartini··on Turn off Apple Intelligence on macOS 27 and get its disk space back
Stop the curl | bash insanity.

https://nocurlbash.com/#en

arialdomartini··on Commit description as a thinking tool
Exactly! For anyone interested, I guess the previous comment refers to the Squash Workflow, which happens to be very idiomatic in Jujutsu

https://arialdo.codeberg.page/ju-ju-tsu/tutorial/moving/squa...

arialdomartini··on Commit description as a thinking tool
On top of this, it pays off to write the commit messages before the code

https://arialdomartini.github.io/pre-emptive-commit-comments

arialdomartini··on Ask HN: What are you reading?
The first volume of Software Foundations, and the first volume of À la recherche du temps perdu, Proust. Both very very slowly.

I guess it will take me years to have reason of both.

arialdomartini··on Font where each token is equal-width
I'd rather miss out a post about fonts than lend my support to nazism.

Personally, I don't buy the "i have to use Twitter, there's no good enough alternative" argument: we're talking about tweets, not some life-saving technology we can't live without.

arialdomartini··on Anecdotally, programmers dislike "reduce"
Since you mention mnemonics, here are the mnemonics I use to remember the (symmetrical) differences between foldr and foldl

https://arialdomartini.github.io/fold-mnemonics

arialdomartini··on Kobo can run apps now
I’ve got only 1 big complain about Kobo: there’s no way to control the tickness of the pencil when writing on PDFs, and the size is too tick to take notes. There’s for epub but not for PDF. Suppprt told me they are not going to fix that.

Do you know of any alternative?

arialdomartini··on Pgtestdb's template cloning approach to testing is fast
My team and I are using the same approach since about 5 years. I collected a bit of notes about it here

https://arialdomartini.github.io/when-im-done-i-dont-clean-u...

arialdomartini··on πFS
You will love reading Jorge Borges The Library of Babel.

https://dn760100.eu.archive.org/0/items/TheLibraryOfBabel/ba...

arialdomartini··on PHP's Oddities
Hint: use test assertions instead of print + comments for the examples.
arialdomartini··on jj – the CLI for Jujutsu
Yes, that’s idiomatic in JJ. Honestly, I’ve been recommending the same workflow (first commit, then make changes) with Git too since years

https://arialdomartini.github.io/pre-emptive-commit-comments

If you want to have a workflow similar to Git with index, check out the Squash Workflow: basically, you would edit your files in a disposable commit having the same purpose of Git’s index.

arialdomartini··on How I write software with LLMs
Fair point. I could try with a harder problem. This still does not explain why Claude Code felt the need to use Opus, and why Opus felt the need to burn 12$ or such an easy task. I mean, it's 40 times the cost.
arialdomartini··on How I write software with LLMs
This is anecdotal but just a couple days ago, with some colleagues, we conducted a little experiment to gather that evidence.

We used a hierarchy of agents to analyze a requirement, letting agents with different personas (architect, business analyst, security expert, developer, infra etc) discuss a request and distill a solution. They all had access to the source code of the project to work on.

Then we provided the very same input, including the personas' definition, straight to Claude Code, and we compared the result.

They council of agents got to a very good result, consuming about 12$, mostly using Opus 4.6.

To our surprise, going straight with a single prompt in Claude Code got to a similar good result, faster and consuming 0.3$ and mostly using Haiku.

This surely deserves more investigation, but our assumption / hypothesis so far is that coordination and communication between agents has a remarkable cost.

Should this be the case, I personally would not be surprised:

- the reason why we humans do job separation is because we have an inherent limited capacity. We cannot reach the point to be experts in all the needed fields : we just can't acquire the needed knowledge to be good architects, good business analysts, good security experts. Apparently, that's not a problem for a LLM. So, probably, job separation is not a needed pattern as it is for humans.

- Job separation has an inherent high cost and just does not scale. Notably, most of the problems in human organizations are about coordination, and the larger the organization the higher the cost for processes, to the point processed turn in bureaucracy. In IT companies, many problems are at the interface between groups, because the low-bandwidth communication and inherent ambiguity of language. I'm not surprised that a single LLM can communicate with itself way better and cheaper that a council of agents, which inevitably faces the same communication challenges of a society of people.

arialdomartini··on I hate GitHub Actions with passion
First time I see jj being mentioned in a post not about jj. Made me very happy.
arialdomartini··on Capsudo: Rethinking sudo with object capabilities
Can you please elaborate on the use of sudo -u nobody? Do you use it interactively? I’m intrigued.
arialdomartini··on An Interactive Guide to the Fourier Transform
Brilliant!

I would just suggest the author to replace the sentence “99% of the time, it refers to motion in one dimension” with “most of the time” since this is a mathematical article and there’s no need to use specific numbers when they don’t reflect actual data.

arialdomartini··on Someone at YouTube Needs Glasses: The Prophecy Has Been Fulfilled
TIL Thank you pal, it perfectly works!
arialdomartini··on Jujutsu for everyone
You will be probably excited to give https://github.com/bolivier/jj-mode.el a try.
arialdomartini··on Why do people keep writing about the imaginary compound Cr2Gr2Te6?
Laurent Bossavit wrote a whole book about similar cases occurred in the IT world, “The Leprechauns of Software Engineering How folklore turns into fact and what to do about it”
arialdomartini··on The iPhone 15 Pro’s Depth Maps
Just wonder if depth maps can be used to generate stereograms or SIRDS. I remember having playing with stereogram generation starting from very similar grey-scaled images.
arialdomartini··on YAGRI: You are gonna read it
Yep. But Event Sourcing comes with its own set of other problems. Also, I don't think this would apply to OP's post: with Event Sourcing you would not even have those DB tables.
arialdomartini··on YAGRI: You are gonna read it
While I like the YAGRI principle very much, I find that adding

- updated_at

- deleted_at (soft deletes)

- created_by etc

- permission used during CRUD

to every table is a solution weaker than having a separate audit log table.

I feel that mixing audit fields with transactional data in the same table is a violation of the separation of concerns principle.

In the proposed solution, updated_at only captures the last change only. A problem that a separate audit log table is not affected to.

arialdomartini··on Polypane, The browser for ambitious web developers
Shouldn’t it be macOS?
arialdomartini··on The Big TDD Misunderstanding (2022)
> see here and here

I believe links are significantly more useful when they include descriptive text like the title or author, rather than just 'here'.

arialdomartini··on Turning the database inside-out (2015)
Eh eh, this is an interesting point of view, but it’s really not like this.

Take the case of the event of “deleting a file”. There has been an interesting discussion between Linus and the orher developers, when Git was being d initially esigned: some of them wanted to capture and track this event. Linus firmly rejected the whole idea of track events, providing very solid arguments

http://web.archive.org/web/20200117061404/http://www.gelato....

arialdomartini··on Turning the database inside-out (2015)
I saw other times Git being related to event sourcing, but the argument is wrong.

Most of the VCSs before Git (RCS, CVS, SVN) used to store deltas and to rebuild the state reapplying them.

The very reason why Git took them by the storm is exactly because, on the contrary, Git does not store deltas but snapshots. Each commit is not there collection of the occurred chances but a complete snapshot of the whole project. Git is very efficient in reusing the blob objects to save space, but it’s still a whole snapshot. The occurred changes are not stored, and they are calculated on demand.

The very opposite of event sourcing, where it’s the state to be calculated and the occurred changes / events to be stored.

Git is really the demonstration that for code versioning state sourcing is way more efficient than event sourcing.

arialdomartini··on AI companies cause most of traffic on forums
Hint: instead of blocking them, serve pages of Lorem Ipsum.
arialdomartini··on Types are the basic tool of software design (2018)
PS: Type Driven Development with Idris is mentioned in the final notes. OP, I could not recommend it more!
arialdomartini··on Types are a basic tool of software design (2018)
I’m reading Type Driven Development with Idris and this post really resonates with what I’m learning. Especially the idea of writing down the function’s type to be guided how to implement it.
arialdomartini··on Nullboard: Kanban board in a single HTML file
Neither to me. But it’s a matter in names: if it does not handle WIP limit it’s not a “Kanban Board”. It’s a Board, and that’s perfectly fine.
Page 1 of 2Next →