Live data from Hacker News

Pi's Minimalism Is Its Advantage

earendil.com

221–230 of 307 posts

Re: Pi's Minimalism Is Its Advantage

#221
post #180

Lots of praise for Pi in this thread, so I'll offer up a diverging opinion. Given all the hype, I was a bit underwhelmed by Pi. It definitely has some good ideas around customization, but it annoyed me in many little ways. For a program that's minimal it sure takes a long time to start up, the standard C-p and C-n bindings don't work, it doesn't follow the XDG Base Directory Specification and just pollutes my $HOME d…

I'll take any scripting language over Lua any day. Every time I had to extend a tool that used Lua as a scripting language, I abandoned that tool because Lua was such a pain. I genuinely don't understand the praise it gets

I have used Lua for years and love it, I don't have any issues with its features, and I've shipped many products with it, across a variety of use cases.

I genuinely understand however, that some people just don't get Lua, and have little energy for it.

However, I think it is awesome and every good software developer should have some experience with it. Whether it is a positive or negative one, you will learn a lot that will help you stay relevant in today's crazy software world.

Re: Pi's Minimalism Is Its Advantage

#222

Earlier quoted context omitted.

> For a program that's minimal it sure takes a long time to start up, the standard C-p and C-n bindings don't work, it doesn't follow the XDG Base Directory Specification and just pollutes my $HOME directory. This drives me mad, I believe Ollama and Claude Code also do this. Seems to be rife in the LLM world. IMO there's no excuse for new software sticking dotfiles in my homedir in 2026.

The problem with the XDG spec is that it now forces you to have different paths on different platforms. It just increases the complexity and at the end of the day unless all software adheres to it, you still end up with a “polluted HOME”. I’m not a fan of config directories being in different locations on different platforms because it’s now one extra thing everyone needs to handle. (Disclaimer: I work on Pi but I di…

Platform standards already require things to be in different locations compared to *NIX dotfiles and dotdirectories - for example Windows %APPDATA%.

I find it a bit shocking that someone working on an agent harness can't be bothered to spend 5 minutes to research this with the help of an LLM and holds such rigid and uninformed views.

And if you don't want to respect platform standards, just respect XDG on all platforms. The .app solution is the laziest one possible.

Just follow XDG everywhere and create .config/app & co everywhere, at least that way there's a chance more apps end up in subfolders instead of ending up with a million folders in the user directory on BOTH Linux and non-Linux.

Re: Pi's Minimalism Is Its Advantage

#223
post #219

Lots of praise for Pi in this thread, so I'll offer up a diverging opinion. Given all the hype, I was a bit underwhelmed by Pi. It definitely has some good ideas around customization, but it annoyed me in many little ways. For a program that's minimal it sure takes a long time to start up, the standard C-p and C-n bindings don't work, it doesn't follow the XDG Base Directory Specification and just pollutes my $HOME d…

I'm using maki ( https://maki.sh ), it has 1, 2 and 3.

Me too, maki in --yolo mode within an incus NixOS container, giving maki rootless (nested) podman and nix flakes powers (so it can install and run whatever tools it needs), with 100% ds4-flash it's extremely powerful and super cheap.

Re: Pi's Minimalism Is Its Advantage

#224
post #180

Earlier quoted context omitted.

I'll take any scripting language over Lua any day. Every time I had to extend a tool that used Lua as a scripting language, I abandoned that tool because Lua was such a pain. I genuinely don't understand the praise it gets

I'd agree with you based on the language itself; Lua has some annoying idiosyncrasies like e.g. (my main pet peeve) 1-based indexing. But I suspect the positive opinion on Lua stem more from the standardized environment the language is built around (i.e. how it is embedded into applications): If you don't explicitly pass capabilities like file handling etc. into the script, it CANNOT use them. Sooo many scripting lan…

1-based indexing is really a lame duck argument - if you can't get past that, you're simply being stubborn.

You absolutely can have tables indexed at 0 - what you cannot do, is fail to take responsibility for the use-patterns you apply to those tables, if you do so - and more specifically you have to take responsibility for the requirement that you use 0-based tables, instead of more optimal methods.

The table is an extraordinarily flexible type. You will gain immensely from using it properly - whether its the newbie dilemma over pairs()/ipairs(), or whether its the professional metatable manipulations - the power of this type is undeniable.

However, if you cannot get past the fact that you must learn it, and that it is applicable to your requirements in every single case, then you are for sure going to have a hard time.

Too much power + too little attention to important details = burnt fingers = endless whining. This is my personal stance having used Lua for decades now, professionally and personally, to do amazing things.

Re: Pi's Minimalism Is Its Advantage

#225
post #219

Lots of praise for Pi in this thread, so I'll offer up a diverging opinion. Given all the hype, I was a bit underwhelmed by Pi. It definitely has some good ideas around customization, but it annoyed me in many little ways. For a program that's minimal it sure takes a long time to start up, the standard C-p and C-n bindings don't work, it doesn't follow the XDG Base Directory Specification and just pollutes my $HOME d…

I'm using maki ( https://maki.sh ), it has 1, 2 and 3.

I just wish it wouldn't ask me to pipe an install script directly to shell to install.

Yes, I can probably inspect that but I do think installing through package managers is the best practice.

It looks better than pi with XDG and not being JS but that is it's own red flag for me.

Re: Pi's Minimalism Is Its Advantage

#226
I am starting to share the opinion in the article. I used to use Claude Code with strong open models, and sometimes pay for Opus.

Now one of my main drivers is out of the box pi’s 4 built in tools, and I add just two extra tools: pi-sandbox and a paid for search service tool. This setup works great with the latest deepseek v4 flash, switching to more powerful open models occasionally.

I wrote my own coding harness in Common Lisp that is almost free or 3rd party libraries and I basically copied pi + the 6 tools I use for pi (except I have two search tools using different vendors in my Common Lisp code).

Everyone (and every company?) should run their own tests and experiments. I find it sad when I talk with people who default to the most complex and the most expensive tools without even trying to evaluate alternatives.

Re: Pi's Minimalism Is Its Advantage

#227
post #219

Earlier quoted context omitted.

I'm using maki ( https://maki.sh ), it has 1, 2 and 3.

I just wish it wouldn't ask me to pipe an install script directly to shell to install. Yes, I can probably inspect that but I do think installing through package managers is the best practice. It looks better than pi with XDG and not being JS but that is it's own red flag for me.

I personally also don't like this, so use cargo to install it, it's in the readme. Takes a reasonable time to build on my X220, but on a modern computer it is plenty fast.

  cargo install --locked --git https://github.com/tontinton/maki.git maki

Re: Pi's Minimalism Is Its Advantage

#228

Earlier quoted context omitted.

I don't get the XDG appeal of having all the data of an app scattered all over the home dir when I can just have a .dir of an app with everything inside.

Backups. If a program properly follows the spec I can just `rsync ~/.config/foo` or store it in a repo and not have to worry about it. If a program doesn't follow the spec I now have to write program specific filters for rsync/custom .gitignore entries to avoid backing up state and cache. Now multiply that across dozens of programs written by lazy devs who don't want to write 12 lines of code to determine the correct…

This exactly. My rsync patterns file is littered with dozens of edge cases to capture the configs and ignore state/caches of stuff that doesn't follow XDG. Really dislike the chore of double checking everything and adding new stuff to the list every time I take a backup.

Even worse are those that seemingly follow XDG but not really, like a lot of Electron apps, that just shove config, state and cache in ~/.config.... sigh

Re: Pi's Minimalism Is Its Advantage

#229

Pi Agent has been one of my favorite harness when it comes to using with local models I had a lot of success running it on my Mac with Qwen3.6-35B-A3B model

Same experience, sometimes using Little Coder helps make things faster because it is built on pi and strips out some functionality. Probably best to stick with pi however, adding pi-sandbox for some security. I will only run Little Coder in an Apple Container.

Re: Pi's Minimalism Is Its Advantage

#230
post #160
post #128

Earlier quoted context omitted.

You can see the approach in his post: https://howaboua.dev/writing/how-i-gave-pi-17-tools-without-... The result: 38% fewer startup tokens, 17 tools exposed through just three schemas, and 19 skills loaded only when needed.

The changing header is really distracting when trying to read your blog. Then it followed me when I scrolled and I just gave up.

Not my blog :)
Post reply on HN