Hacker News new | past | comments | ask | show | jobs | submit login

Makes you wonder why developers had to invent such shitty CLI UX in the first place instead of natural language syntax, keywords, and arguments.



Natural language syntaxes universally suck. A faux english syntax isn't easier to use if you don't know which english in particular will be accepted. A complex cli interface fundamentally can't be easy to use. A GUI can fix that by making things discoverable and by integrating the documentation into the UI, but the ffmpeg devs presumably see that as someone else job (and there have been people to step up).


Probably because:

1. ffmpeg exposes all of its options through the CLI, and there are a lot of options. So it's probably always going to be completely undiscoverable. It really needs a GUI to be usable, but that's a project in itself (I guess the project is Handbrake).

2. They probably didn't put a lot of work into the UX of the CLI since it's an open source project.

3. Backwards compatibility.


>So it's probably always going to be completely undiscoverable. It really needs a GUI to be usable, but that's a project in itself (I guess the project is Handbrake).

I don't buy this. A TUI is completely possible, e.g. LazyGit, Htop, etc, countless tools indicate you can get pane-based UIs going in the terminal; the FFmpeg team has simply never made such a thing a priority.

But even without a TUI, the most basic use-cases are well-known after over 15+ years of existence, simple prompt-based wizards, i.e. "git add -p", should be offered; again, a matter of priority rather than being intractable.

A year ago or so someone posted a subscription service they made for composing the pipeline graph visually


> A TUI is completely possible

Sure. A TUI is basically a poor man's GUI.

> simple prompt-based wizards, i.e. "git add -p", should be offered

I agree. Wouldn't be hard. I think you may as well use Handbrake though.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: