4 ms·
I've always thought that the Unix philosophy could do well here; if you start by building the rawest version of your app to operate on the command line, and the
by pksebben 5y ago
I've always thought that the Unix philosophy could do well here; if you start by building the rawest version of your app to operate on the command line, and then make the UI an interface to that, you can trivially automate anything the UI can do.
so in this scheme, the cli's "do one thing and do it well" is driving the program, while the UI's "one thing" is providing an interface to the cli.
the other nice thing about this is that it provides a far more debuggable build. also enforces good habits vis a vis separating abstractions.
not always possible in all contexts, though. I would have trouble implementing this for an app like Photoshop (although their command palette implementation is super close)
- sobkas 5y ago> I've always thought that the Unix philosophy could do well here; if you start by building the rawest version of your app to operate on the command line, and then make the UI an interface to that, you can trivially automate anything the UI can do. That why open source software have the best UIs. /s