43
submitted 6 months ago by matcha_addict@lemy.lol to c/android@lemmy.world

In the desktop world, we have the option to use the command line: a uniform interface for a multitude of apps that would otherwise be very different when implemented as GUIs.

Using the same interface, I can move or edit files, cross out tasks on my to-do list, retrieve my password for my email account (using Bitwarden or pass), etc. All in the command line. The GUI for each of those are wildly different.

The other benefit is it is very easy to create a new command line app, as opposed to a GUI.

Is anything like this possible for the smartphone world (even if it doesn't or will never exist)? What would it look like?

Since smartphone typing is much slower, we can't simply reuse the command line. We'd need something different. An interface that can still support a various spectrum of different operations, yet ergonomic for a smartphone. What are your thoughts?

you are viewing a single comment's thread
view the rest of the comments
[-] matcha_addict@lemy.lol 1 points 6 months ago

Every command has its own syntax

I don't consider this a different interface. Where you draw the line is a personal choice, but I'd be happy with a smartphone equivalent where the differences are similar to command line tools having different syntax.

editing files is something completely different

I should have clarified, but by editing files, I don't mean the vim-like full text editor experience. I mean things like appending text to a file with echo >>, or using sed, etc.

A lot of these interfaces are like they are for mostly historical reasons

Yes, legacy baggage exists. This only furthers my point, that things could be even better using the same principles, without legacy baggage.

Termux

I only use Termux out of necessity (app or functionality I can only access via a terminal). If an app with good ergonomics exists, I wouldn't look at Termux. But I would still look at command line on desktop.

[-] WIPocket@lemmy.world 7 points 6 months ago

I’d be happy with a smartphone equivalent where the differences are similar to command line tools having different syntax.

My point was that I think we have that already. The medium is a touch screen, and apps have over time adapted to that the same way they have to the terminal. Here we scroll by swiping up and down, move between tabs by swiping to the side, etc. All held together by system-wide gesture navigation. And yea, every app does stuff differently, and so does every terminal one.

This only furthers my point, that things could be even better using the same principles, without legacy baggage.

I feel like this is exactly what Google was attempting to do with Material Design: a good, consistent interface / design language. It really was a fairly fresh start using what we learned from the smartphone apps that came before, with the design done intentionally. What do you think they missed?

Another thing to keep in mind is that the terminal is built around text and files, while the GUI is not. You cant expect every problem to be cleanly / ergonomically solve-able inside an Android app, just like you cant expect a good Snapchat / Instagram client in your terminal. There are file manager apps, there are text editors, there are todo lists, but the terminal is just a better platform for some tasks while worse for others.

[-] matcha_addict@lemy.lol 1 points 6 months ago

The medium is a touch screen

That's more like a GUI than a CLI. You have input boxes, buttons, sliders, gestures, scrolling, drag and drop, etc, and their different combinations. Many apps do almost the same thing, except giving you a different interface and a different combination of these steps. You listed some of those variations yourself.

How is that the same as the uniformity of the text only interface? That's far more different than differences in syntax, but still text. Two hyphens instead of one hyphen for a CLI flag is a really small difference.

[-] nekusoul@lemmy.nekusoul.de 4 points 6 months ago

Even as a heavy user of CLIs, claiming that their text-only nature somehow makes them more uniform, feels a bit overly reductive to me:

To start with, there's simple fire-and-return commands, interactive commands, full-blown TUIs and so on. Then there's the parameters, which aren't really consistent either across applications either. Neither in the naming of arguments, nor their grammar. The representation of the output is also all over the place.

With all those things, it's really not so dissimilar from the different layouts of GUIs. Not to mention that there's also lots of CLI tools that do the same thing but have a different interface, so yeah.

[-] matcha_addict@lemy.lol 1 points 6 months ago

I'm excluding TUI's because you're right, they're pretty different and share some of the ununiformity of GUIs. Still, the command line world remains vast and with that interface you can do a lot, and it is fairly uniform.

there's parameters

That doesn't change the uniformity of the interface. Of course every application will need different parameters. Now do they receive these different parameters via a similar and uniform interface? I say yes. I enter it via keyboard, and for the most part they all use space delimited flags, most of them hyphenated. I'd call that pretty uniform.

To phrase it another way, if all GUIs started using the same names for all parameters, it remains non-uniform interface, and it wouldn't solve 1% of the issue with GUIs.

Out of curiosity, if you don't see the CLI world as more uniform, why do you use it and for what benefit do you prefer it?

[-] nekusoul@lemmy.nekusoul.de 3 points 6 months ago

I use the CLI because it's keyboard-focused (though I use lots of mouse-enabled TUIs) and because it's programmable.

Generally though, I kind of get what you're trying to say, but 'uniformity' feels like an unfortunate choice in the context of your question, as the meaning can be very arbitrarily defined, hence the confusion. I could, for example, claim that GUIs are more uniform because all chat apps, browsers etc... are so similar to each other that once I've learned one I can use all.

Which is why It'd probably be better if you tried to reword your initial question avoiding that term, focussing more on describing the desired benefits of your definition of uniformity.

Otherwise I'd point towards voice recognition, as that's very similar to a CLI, but probably not what you had in mind, I'm guessing?

this post was submitted on 26 Apr 2024
43 points (100.0% liked)

Android

27842 readers
187 users here now

DROID DOES

Welcome to the droidymcdroidface-iest, Lemmyest (Lemmiest), test, bestest, phoniest, pluckiest, snarkiest, and spiciest Android community on Lemmy (Do not respond)! Here you can participate in amazing discussions and events relating to all things Android.

The rules for posting and commenting, besides the rules defined here for lemmy.world, are as follows:

Rules


1. All posts must be relevant to Android devices/operating system.


2. Posts cannot be illegal or NSFW material.


3. No spam, self promotion, or upvote farming. Sources engaging in these behavior will be added to the Blacklist.


4. Non-whitelisted bots will be banned.


5. Engage respectfully: Harassment, flamebaiting, bad faith engagement, or agenda posting will result in your posts being removed. Excessive violations will result in temporary or permanent ban, depending on severity.


6. Memes are not allowed to be posts, but are allowed in the comments.


7. Posts from clickbait sources are heavily discouraged. Please de-clickbait titles if it needs to be submitted.


8. Submission statements of any length composed of your own thoughts inside the post text field are mandatory for any microblog posts, and are optional but recommended for article/image/video posts.


Community Resources:


We are Android girls*,

In our Lemmy.world.

The back is plastic,

It's fantastic.

*Well, not just girls: people of all gender identities are welcomed here.


Our Partner Communities:

!android@lemmy.ml


founded 1 year ago
MODERATORS