frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Forget Flags and Scripts: Just Rename the File

https://robertsdotpm.github.io/software_engineering/program_names_as_input.html
11•Uptrenda•1h ago

Comments

Quarrelsome•55m ago
this is satire, right?
belkinpower•52m ago
This is already how busybox works. These examples are taking it to a more extreme level but it's not _that_ crazy.
zahlman•29m ago
AIUI, on Windows, pip (via the vendored `distlib`) also makes stub executables that work this way to implement the "entry points" defined in installed wheels. See: https://github.com/pypa/distlib/blob/master/PC/ReadMe.txt
usefulcat•36m ago
It may be a bit uncommon, but it's not at all new. For example, on a Linux system I have, there are several files in /usr/bin that use hard links to refer to the same file (inode) by different names:

bunzip2 / bzcat / bzip2

gunzip / uncompress

unzip / zipinfo

pigz / unpigz

pkg-config / x86_64-pc-linux-gnu-pkg-config

perlbug / perlthanks

Use ls -li to show the inode number for each file or directory. For example:

    $ ls -li /usr/bin/{bzip2,bunzip2,bzcat}
    23069197 -rwxr-xr-x 3 root root 39144 Sep  5  2019 /usr/bin/bunzip2
    23069197 -rwxr-xr-x 3 root root 39144 Sep  5  2019 /usr/bin/bzcat
    23069197 -rwxr-xr-x 3 root root 39144 Sep  5  2019 /usr/bin/bzip2
castral•47m ago
It feels wrong but I can't quite put my finger on the reason why... It will make version control more hectic, for sure. It also seems to be conflating identification with configuration which seems non-ideal. What about versioning and upgrading? How do I find a "well-known" entry point with a file name of flags? Every read now becomes an expensive find and grep lesson... Yeah, I don't like it.
Charon77•25m ago
If the rename changes the entire behavior (see busybox comment) it makes sense. But defining multiple arguments? Now the author had to use -- in the file name where using space would do (and the OS splits it for you)

And good luck trying to run the same programs with different arguments. You'll have to take turns renaming the file, or create hardlinks just for ephemeral arguments.

It can be useful but there's time and place to do it.

csb6•32m ago
Seems a lot easier to have a --help flag that lists all of the options and their function. That is self-documenting (assuming the descriptions are useful) and helps with discovery. Changing the name of the file to foo--bar.exe doesn't seem any easier than writing foo.exe --bar
ziotom78•26m ago
I too was perplexed, but the main use case seems to be when you want to share a particular configuration or need to be sure that you always use the same set of flags:

> Flags are ephemeral – you have to share the command line or wrap it in a script. Scripts depend on environment, which can break portability. Filenames solve both: the program describes itself, requires zero setup, and any configuration can be shared by simply renaming the file.

[Emphasis added] Although I find a script that wraps the command and calls it more versatile, there might be some value in this idea for some very simple cases, like example #4.

nxpnsv•5m ago
I guess you could rename it to foo--bar--help.exe to get the help. An awkward workflow indeed
abrookewood•27m ago
You could skip the underlying mechanism by renaming Claude.exe and then it just passes the name as a new chat.

Undone Computer Science

https://www.undonecs.org/
1•y1n0•3m ago•0 comments

I Don't Know ML. Claude Does. 0.871 F1 on Predicting Linux Game Compatibility

https://getjump.me/posts/01-protondb-compatibility-ml-x-claude/
1•GetJump•3m ago•1 comments

Title: "Announcing S3syncy – Open-Source Real-Time S3 Synchronization"

https://pypi.org/project/s3syncy/
1•mtahle•4m ago•1 comments

Using Ledger, plain text accounting and a touch AI to fill in my UK tax return

https://www.jvt.me/posts/2026/02/01/ledger/
1•yesbabyyes•6m ago•0 comments

Agents over Bubbles

https://stratechery.com/2026/agents-over-bubbles/
1•abhis3798•6m ago•0 comments

Agent Package Manager

https://github.com/microsoft/apm
1•donutshop•7m ago•0 comments

Show HN: N0x – LLM inference, agents, RAG, Python exec in browser, no back end

https://n0xth.vercel.app/
1•redhanuman•13m ago•0 comments

Switzerland Built an Alternative to BGP

https://www.theregister.com/2026/03/17/switzerland_bgp_alternative/
2•jonbaer•13m ago•0 comments

The Healing Power of Social Friction

https://www.noemamag.com/the-healing-power-of-social-friction/
1•sonicrocketman•17m ago•0 comments

Cognitive overload: When processing information becomes a problem (2022)

https://www.mayoclinichealthsystem.org/hometown-health/speaking-of-health/cognitive-overload
1•marysminefnuf•18m ago•0 comments

Z AI Character Card Wiki

https://zaicc.net/
1•theyoungsir•19m ago•0 comments

Why investors won't know what to make of AI for a while

https://www.economist.com/finance-and-economics/2026/03/12/why-investors-wont-know-what-to-make-o...
1•petethomas•22m ago•0 comments

OTel-Native by Design – Back Ends That Export to Any Observability Stack

https://signoz.io/blog/otel-native-by-design/
1•dhruv_ahuja•24m ago•0 comments

Superpowers

https://github.com/obra/superpowers
1•evo_9•30m ago•0 comments

Show HN: Paste your YAML to calculate and optimize GitHub Actions costs

1•shubhamoriginx•31m ago•0 comments

No space, no power, no support – what life is like for Indian IT workers

https://theconversation.com/no-space-no-power-no-support-what-life-is-really-like-for-indian-it-w...
3•patrakov•32m ago•0 comments

Spite Driven Development

https://notes.zachmanson.com/spite-driven-development/
2•vismit2000•35m ago•1 comments

Show HN: Libfyaml 1.0.0-alpha1, a modern YAML library for C

https://github.com/pantoniou/libfyaml
1•fypanto•37m ago•0 comments

Ask HN: I built a geometric reasoning engine – what should I test it on?

1•gmeksriunas•37m ago•0 comments

SSH has no Host header

https://blog.exe.dev/ssh-host-header
27•apitman•39m ago•15 comments

Real or Slop? – Programming Languages Papers Edition

https://slop.zackg.me/
2•matt_d•45m ago•1 comments

Commandments of AI (Mindfulness)

2•xaj•48m ago•0 comments

Knowledge workers managing AI show collapsed productivity, not just a plateau

1•dfordp11•51m ago•0 comments

New iPhone app covering retro CPUs

https://apps.apple.com/us/app/opcodes/id6760205834
1•GrantMeStrength•55m ago•1 comments

AI – Assassinating Intelligence

https://yashgarg.dev/posts/ai-slop/
2•salkahfi•56m ago•0 comments

Show HN: Hat v0.7.0 – Fast, local automatic file compression and conversion

https://github.com/bittere/hat
1•_bittere•56m ago•0 comments

Meta's Omnilingual MT for 1,600 Languages

https://ai.meta.com/research/publications/omnilingual-mt-machine-translation-for-1600-languages/?...
1•j0e1•57m ago•0 comments

Show HN: Bank Parser – Convert US Bank Statement PDFs to QuickBooks-Ready Excel

https://bank-parser.com
1•zetbaur•58m ago•0 comments

Doubling down on open-access quantum computing

https://www.ibm.com/quantum/blog/open-plan-updates
1•jonbaer•58m ago•0 comments

Anonymous Chatting Site

https://tormessenger.lovable.app/
1•genx__•58m ago•1 comments