this post was submitted on 16 Aug 2023
-7 points (37.0% liked)

Programmer Humor

32602 readers
227 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[โ€“] PaX@hexbear.net 2 points 1 year ago* (last edited 1 year ago) (1 children)

Sorry, I should have been more clear. I agree with you. I'm not talking about text-based interfaces and commands. I just mean the way Unix/POSIX handles "terminals" (devices that accept streams of characters according to a protocol established in the 70s) is an antiquated way of handling simple plain text streams. It made sense back then when there was a need to send commands to dumb terminals in-band with the plaintext but this doesn't really make sense these days when your "terminal" is actually just a program pretending to be a dumb terminal running inside a window. When was the last time you used job control instead of opening another window?

[โ€“] azimir@lemmy.ml 2 points 1 year ago

I'm probably the wrong person to ask if they're using Unix-style features because I do use them. Hell, most of my RaspberryPI (and other SBC systems) I only ever use over the serial console and SSH. It's the most natural way to interact with a computer.

Job control is something I do use. I regularly background processes, run other tools, and the foreground the prior ones. I'll also launch GUI tools from the command line often. I launch ArduinoIDE, vscode, freecad, gimp, many others from the terminal. A common one is to be doing terminal file management, or git repo management, and then launch nemo with "nemo . &" to bring up a file explorer in the current directory.

I also use screen (never moved to tmux like I should have). I'll ssh into servers and run screen to manage projects, edit code, and do long running processes in the test phases before deployment.

I'll also suspend vim to drop to a command line. It's faster than moving back to the mouse and waiting for another terminal. When I'm done, I foreground vim and get back to work.

I send OS signals with kill and such. Yeah, I leverage there terminal, process controls, and OS level signals. Should and average suer do this? Unlikely. My kids don't (mostly GUI only work for them), but over time they have been inching forward on gaining more control over their Linux machines, so they'll be doing process control soon enough. Especially for things like Minecraft and Terraria servers that they're now starting to host for friend groups.

If not a character stream parsing based terminal input output system, what would you propose instead? The current computing models are merely the accepted approach, and if a better one comes along I'm all ears.