Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
xzzy
Mar 5, 2009

peepsalot posted:

Yeah I think the problem is the mindset of command-line types(and particularly those would would be willing to contribute to such a text based project) don't value improving things like discoverablility in interface design and would rather refer you to RTFM ad infinitum until you have memorized everything or you give up and stop using the program.

e: Also making things easier/intuitive would devalue their mastery of the arcane. They had to trudge through this nonsense so everyone else should also have to do the same.


How the heck does one implement "discoverability" in a console based program that has a resolution of maybe 100x50 "pixels" (depending how big the user makes the window)?

In principle I agree but this is why we ended up with GUIs, it allows much greater information density and are generally designed around a few easily grasped concepts that welcome exploration. Duplicating that in vi would be a colossal waste of time due to the fact it would make the program less effective at displaying text and still not be as convenient as a full GUI app.

Let vi be vi, and let visual editors be visual editors. It's a solved problem, refactor not necessary. :shrug:

Adbot
ADBOT LOVES YOU

Jaded Burnout
Jul 10, 2004


xzzy posted:

How the heck does one implement "discoverability" in a console based program that has a resolution of maybe 100x50 "pixels" (depending how big the user makes the window)?

Atom has cmd+shift+t which provides a command search tool. It doesn't take up any space when not in use, but I can still use it to look up commands I don't use all that often. Does vim have something similar? It certainly could.

I'm not sure the small window size is a valid criticism, if you're using it as a primary development environment you'll make the window bigger. Most vim devs I know work full screen with (confusing) splits.

xzzy
Mar 5, 2009

vim has the :help command which it informs the user about on startup if they don't load a file and it has a simple keyword search with ":help searchterm".

peepsalot
Apr 24, 2007

        PEEP THIS...
           BITCH!

evol262 posted:

Remember "edit" on DOS (which is basically nano)? You still need to memorize keybindings, because an 80x24 terminal doesn't give the kind of granularity you want in clicking. curses and other frameworks exist, but are honestly ancient and hard to work with.
Yes I remember edit, and it was great. If you can memorize "Alt-F" for file menu that's all you need to arrow around and see all the menu items. Also IIRC all the menu items with hotkeys have those hotkeys labeled next to them.


Also if screen real-estate is a concern, it possible to have a menu that hides until activated (elinks does this for example).

Boris Galerkin
Dec 17, 2011

I don't understand why I can't harass people online. Seriously, somebody please explain why I shouldn't be allowed to stalk others on social media!
Has anybody updated to fedora 28 from 27 yet? Is it safe to do so is what I’m asking or am I gonna have to spend hours fixing stuff.

xzzy
Mar 5, 2009

peepsalot posted:

Also if screen real-estate is a concern, it possible to have a menu that hides until activated (elinks does this for example).

But in the strictest sense this hurts discoverability because the user has to know about the feature before they can use it. Which elinks does sufficiently so I'm not saying it can't work, but I'm trying to make the point that every solution is a compromise of some sort.

vi and its clones just went down the road of compromising all semblance of usability to make things as efficient as possible provided the user is able to figure out the commands. Trying to change that at this point is 100% futile, so the best suggestion is to just use something else.

nano, pico, joe, and jed are the main console based visual editors I've seen used over the years and all are perfectly good at their job.

peepsalot
Apr 24, 2007

        PEEP THIS...
           BITCH!

xzzy posted:

But in the strictest sense this hurts discoverability because the user has to know about the feature before they can use it. Which elinks does sufficiently so I'm not saying it can't work, but I'm trying to make the point that every solution is a compromise of some sort.

vi and its clones just went down the road of compromising all semblance of usability to make things as efficient as possible provided the user is able to figure out the commands. Trying to change that at this point is 100% futile, so the best suggestion is to just use something else.

nano, pico, joe, and jed are the main console based visual editors I've seen used over the years and all are perfectly good at their job.
Alt+(menu item letter), and the assumption that a file menu exists, has been a pretty common interface paradigm that's persisted for 20+ years though.

I'm not really saying that vi should be rewritten into resembling ms edit, its already too ingrained in its own snowflake ways of doing everything.
But I would really love to see a linux compatible analogue of ms edit with some added modern IDE-like features like syntax highlighting, autocomplete, MDI / tabs, maybe treeview etc.

hifi
Jul 25, 2012

I'm not sure why you don't want to use something that can edit your files remotely (emacs has a great plugin for this), but if you're using vanilla emacs and probably don't want to be dropping config files and downloaded packages all around the place at that point i'd just use mg or one of the other micro emacs clones. Like evol hinted at earlier, if you're used to the default shell navigation keys then you're reasonably well introduced to the emacs ones.

Volguus
Mar 3, 2009

Boris Galerkin posted:

Has anybody updated to fedora 28 from 27 yet? Is it safe to do so is what I’m asking or am I gonna have to spend hours fixing stuff.

I just did in the weekend and it was fine. The biggest issue for me was that I had to remove certain packages from negativo17 repository (video players) in order for the upgrade to go through. Those packages (mpv, vlc) are still not available on his repo, but nvidia drivers are, along with a bunch of other things. So for video player i just compiled mpv from source, which meant that I needed a newer version of ffmpeg, which i compiled form source as well, and ... that's life.

But other than those very self-inflicted issues, everything is fine. I didn't want to touch the rpm-fusion repos, those may have the players but they don't always behave well with the negativo17 repo.

SoftNum
Mar 31, 2011

peepsalot posted:

Alt+(menu item letter), and the assumption that a file menu exists, has been a pretty common interface paradigm that's persisted for 20+ years though.

I'm not really saying that vi should be rewritten into resembling ms edit, its already too ingrained in its own snowflake ways of doing everything.
But I would really love to see a linux compatible analogue of ms edit with some added modern IDE-like features like syntax highlighting, autocomplete, MDI / tabs, maybe treeview etc.

This is kinda what Nano (or joe I forget which) is.

Also everyone who does this does it as scripts for VI or emacs. I quite like spacemacs because esc-space brings up a menu and you can type other letter to get sub-menus and such.

But you ARE still running emacs at the end of the day.

vvv Oh sure. Hell spacemacs uses evil-mode as it's base (which makes emacs behave more like vim) bare emacs is super painful. don't do it.

SoftNum fucked around with this message at 17:54 on May 2, 2018

Volguus
Mar 3, 2009
Outside of very few neckbeards, nobody is running naked emacs nowadays. There are tons of plugins out there that can make it into a rocket ship if you so desire.

Super-NintendoUser
Jan 16, 2004

COWABUNGERDER COMPADRES
Soiled Meat
If you have ssh access, that means you can use an scp plugin for notepad++ or whatever and be done with it.

ToxicFrog
Apr 26, 2008


Jerk McJerkface posted:

If you have ssh access, that means you can use an scp plugin for notepad++ or whatever and be done with it.

Or sshfs with anything, if the laptop is running linux.

I mean, Jaded Burnout already ruled out sshfs in their original question, but I wonder why; I use sshfs + Sublime and it works great.

SoftNum
Mar 31, 2011

ToxicFrog posted:

I mean, Jaded Burnout already ruled out sshfs in their original question, but I wonder why; I use sshfs + Sublime and it works great.

Also rsub is smooth like butter.

But hey, vim and emacs (with sane scripts) are too so whatever.

SoftNum fucked around with this message at 21:19 on May 2, 2018

Jaded Burnout
Jul 10, 2004


ToxicFrog posted:

I mean, Jaded Burnout already ruled out sshfs in their original question, but I wonder why; I use sshfs + Sublime and it works great.

Stories of failure from others, worry about corrupted data, and generally lovely support from editor plugins (not that that matters for sshfs). It's also by nature more fragile a setup than working entirely on the remote machine, no?

But if you're having good luck with it over the wild internet I'll reconsider kicking it to the curb.

Varkk
Apr 17, 2004

Boris Galerkin posted:

Has anybody updated to fedora 28 from 27 yet? Is it safe to do so is what I’m asking or am I gonna have to spend hours fixing stuff.

I did it to a test machine at work. No dramas just downloaded all packages rebooted and updated. But this install was a Fedora security spin with no extra repos or anything. All packages were installed from the default repos.
Will try home PC later that does have some non-standard packages.

evol262
Nov 30, 2010
#!/usr/bin/perl

Jaded Burnout posted:

Stories of failure from others, worry about corrupted data, and generally lovely support from editor plugins (not that that matters for sshfs). It's also by nature more fragile a setup than working entirely on the remote machine, no?

But if you're having good luck with it over the wild internet I'll reconsider kicking it to the curb.

Other than inotify not working right last time I checked, it actually works really well.

apropos man
Sep 5, 2016

You get a hundred and forty one thousand years and you're out in eight!

Boris Galerkin posted:

Has anybody updated to fedora 28 from 27 yet? Is it safe to do so is what I’m asking or am I gonna have to spend hours fixing stuff.

I'm currently running 27 KDE spin after a long time using GNOME. I'm liking KDE, although it's a bit too customisable for my tastes, but that's not necessarily a bad thing.

The last few iterations of Fedora (25 -> 26 -> 27) have went without a hitch using the DNF upgrade tool when I was using GNOME. I'll update this KDE machine tomorrow, as it's been a long day and I can't be arsed.

I'm expecting it to go without a hitch, though. We'll see.

abigserve
Sep 13, 2009

this is a better avatar than what I had before

Jaded Burnout posted:




No, it's a weird response because they seemed to imply that asking about terminal-based editors excluded use of git, which is a complete non-sequitur.



What evol said, I could have been more clear, but if your code is already in version control it's a trivial amount of extra work to automate the actual deployment of that code which removes the requirement to do everything over SSH.

An Enormous Boner
Jul 12, 2009

Volguus posted:

Outside of very few neckbeards, nobody is running naked emacs nowadays. There are tons of plugins out there that can make it into a rocket ship if you so desire.

Anyone running emacs plugins is also a big fat neckbeard.

Docjowles
Apr 9, 2009

Anyone posting in the Linux thread of a dying comedy forum may also, themselves, be a neckbeard.

the emacs users are way worse though

An Enormous Boner
Jul 12, 2009

You're a piece of poo poo if you use a computer.

Vulture Culture
Jul 14, 2003

I was never enjoying it. I only eat it for the nutrients.

An Enormous Boner posted:

You're a piece of poo poo if you use a computer.
social media has proven this to be true

iospace
Jan 19, 2038


An Enormous Boner posted:

Anyone running emacs plugins is also a big fat neckbeard.

apropos man
Sep 5, 2016

You get a hundred and forty one thousand years and you're out in eight!
Fedora 27 KDE version -> Fedora 28 upgrade went fine with the dnf system-upgrade plugin. :)

Jaded Burnout
Jul 10, 2004


abigserve posted:

What evol said, I could have been more clear, but if your code is already in version control it's a trivial amount of extra work to automate the actual deployment of that code which removes the requirement to do everything over SSH.

Right, I see. While I entirely agree that having Jenkins (or whatever) do full test suite runs and deploys etc is a good thing (and is the case most places I work) it's actually not the bit I need the beef for.

As an example, one of my clients has a website and publishing platform made up of over 80 Rails applications with a dozen databases of different kinds, plus elasticsearch, rabbitmq, etc etc. Booting up even a decent chunk of that stuff on a local VM cripples my little dev laptop from high memory usage and some automated background stuff. But it means I can make a change in my editor, hit save, refresh my browser and see the changes.

If I had to commit everything every time to git and push it somewhere it'd be a huge pain.

An Enormous Boner posted:

You're a piece of poo poo if you use a computer.

Fact.

G-Prime
Apr 30, 2003

Baby, when it's love,
if it's not rough it isn't fun.

Jaded Burnout posted:

As an example, one of my clients has a website and publishing platform made up of over 80 Rails applications with a dozen databases of different kinds, plus elasticsearch, rabbitmq, etc etc. Booting up even a decent chunk of that stuff on a local VM cripples my little dev laptop from high memory usage and some automated background stuff. But it means I can make a change in my editor, hit save, refresh my browser and see the changes.

Mocks for local testing. UI behavior shouldn't be dependent on your APIs, and you should be able to test APIs locally with a contrived storage backend.

evol262
Nov 30, 2010
#!/usr/bin/perl
For all we know, rails could be a backend/API aggregator with React on the frontend.

I love mocking for auto testing. If you asked me to mock out 15 different data sources, I'd quit (or probably write a rake task to auto generate them from whatever test data exists)

ToxicFrog
Apr 26, 2008


Jaded Burnout posted:

Stories of failure from others, worry about corrupted data, and generally lovely support from editor plugins (not that that matters for sshfs). It's also by nature more fragile a setup than working entirely on the remote machine, no?

But if you're having good luck with it over the wild internet I'll reconsider kicking it to the curb.

I use it daily over a LAN and perhaps weekly over ~the internet~, and I've never had data corruption issues. The most obvious issue I have is that (as evol262 mentioned) inotify doesn't work; for my workflow the stuff that needs to set inotify watches is generally running on the remote system anyways, so as a practical matter this is only an issue in that I have to manually click "refresh project directories" in Sublime for it to display new files created remotely, rather than them just showing up instantly, and that doesn't come up often.

I do recommend mounting it with -o reconnect,idmap=user -- the latter translates your user ID on the remote system to match the one on the local system, and the former automatically reconnects if the ssh connection fails -- which means that your editor will just freeze for a few seconds waiting for the reconnect when it happens, rather than suddenly seeing all of its files vanish.

Jaded Burnout
Jul 10, 2004


G-Prime posted:

Mocks for local testing. UI behavior shouldn't be dependent on your APIs, and you should be able to test APIs locally with a contrived storage backend.

I've written about five different responses to this and deleted them all, because my first instinct is to ask if you've ever actually worked at a real company but I'm sure you have.

Conceptually, hypothetically, yes I can see the logic in that. But practically and in every real life company and codebase I've touched it would be at best weeks of work and years of ongoing maintenance vs just running the applications on a slightly more powerful machine.

It would also defeat the point of using client-supplied dev VMs which is a) dev-prod parity and b) consistency between devs if I went and ran my own mock services, and it's the height of rudeness and social incapacity to walk into a company and insist on changing a hundred people's development workflows for my own benefit.

G-Prime
Apr 30, 2003

Baby, when it's love,
if it's not rough it isn't fun.
Your points are 100% fair, and I'm a stubborn optimist. I've been the agent of change at my current client to do exactly what I mentioned, and thankfully we're in this major version transition that's involving a rewrite mostly from greenfield. What I was saying was barely reasonable on paper and situational as hell, worthy of being disagreed with.

xzzy
Mar 5, 2009

So there was a minor office debate about free memory on a linux system, triggered by the output of the 'free' command. Its output disagrees with another tool we've started using (netdata) for the 'used' column.

Long story short, the procps-ng free command subtracts SReclaimable memory from the 'used' column, I guess because they figure if the memory can be used by something else it's not actually used. Netdata does a straight "MemTotal - MemFree - Buffers - Cached" type calculation.

Don't really have a question about this, it seems like a purely philosophical debate because reclaimable memory is still "used" in the sense the kernel is caching data in there, but it's sort of free in the sense it can be reallocated when needed. Curious if anyone knows the story behind this or has an opinion on which is "correct."

(I did notice the older procps package used in RHEL6 and earlier did not subtract SReclaimable so it's a relatively new behavior)

Boris Galerkin
Dec 17, 2011

I don't understand why I can't harass people online. Seriously, somebody please explain why I shouldn't be allowed to stalk others on social media!

Volguus posted:

I just did in the weekend and it was fine. The biggest issue for me was that I had to remove certain packages from negativo17 repository (video players) in order for the upgrade to go through. Those packages (mpv, vlc) are still not available on his repo, but nvidia drivers are, along with a bunch of other things. So for video player i just compiled mpv from source, which meant that I needed a newer version of ffmpeg, which i compiled form source as well, and ... that's life.

But other than those very self-inflicted issues, everything is fine. I didn't want to touch the rpm-fusion repos, those may have the players but they don't always behave well with the negativo17 repo.

Varkk posted:

I did it to a test machine at work. No dramas just downloaded all packages rebooted and updated. But this install was a Fedora security spin with no extra repos or anything. All packages were installed from the default repos.
Will try home PC later that does have some non-standard packages.

apropos man posted:

I'm currently running 27 KDE spin after a long time using GNOME. I'm liking KDE, although it's a bit too customisable for my tastes, but that's not necessarily a bad thing.

The last few iterations of Fedora (25 -> 26 -> 27) have went without a hitch using the DNF upgrade tool when I was using GNOME. I'll update this KDE machine tomorrow, as it's been a long day and I can't be arsed.

I'm expecting it to go without a hitch, though. We'll see.

I did the upgrade a bit ago and everything went smoothly. I need to do some reading on what these new third party repositories are cause I’ve ever really opened the App Store app before but it’s neat that Chrome is in there.

I think the only issue I had with updating was that it defaulted to Wayland? My entire UI was really sluggish and persisted on reboot. I logged out and clicked the gear icon and “start gnome with xorg” wasn’t selected. Everything is back to normal now once I selected that option.

Anyway are the new laptop battery improvements included in this upgrade? I remember seeing some benchmarks about how the 4.17 kernel was so much better wrt battery life, and the new features for Fedora 28 blog posts talk about improved battery life, but my kernel is v4.16?

anthonypants
May 6, 2007

by Nyc_Tattoo
Dinosaur Gum
I updated from 27 to 28 on my RPi3 last night and either it dropped ntp or I never had ntp in the first place. I'm not entirely sure which is which, but it says the current time is somewhere in March and dnf's last expiration check was -58 days ago.

ToxicFrog
Apr 26, 2008


xzzy posted:

So there was a minor office debate about free memory on a linux system, triggered by the output of the 'free' command. Its output disagrees with another tool we've started using (netdata) for the 'used' column.

Long story short, the procps-ng free command subtracts SReclaimable memory from the 'used' column, I guess because they figure if the memory can be used by something else it's not actually used. Netdata does a straight "MemTotal - MemFree - Buffers - Cached" type calculation.

Don't really have a question about this, it seems like a purely philosophical debate because reclaimable memory is still "used" in the sense the kernel is caching data in there, but it's sort of free in the sense it can be reallocated when needed. Curious if anyone knows the story behind this or has an opinion on which is "correct."

(I did notice the older procps package used in RHEL6 and earlier did not subtract SReclaimable so it's a relatively new behavior)

Huh. The version of `free` I have (procps-ng 3.3.12) does not subtract SReclaimable from used. Since there's a separate available column (which does), this makes perfect sense: used is memory which is currently holding data for some purpose, available is memory that could be claimed (by application startup, malloc(), etc) even if it means evicting entries from the block cache or whatever.

I would be very surprised to see used stop counting memory that is in use but reclaimable; that's what the available column is for.

xzzy
Mar 5, 2009

Maybe they reverted then because the machine I happened to be investigating on is using 3.3.10. Or maybe it's one of those annoying backport-but-keep-the-old-version-number things redhat likes to do with rhel.

code:
[root@server ~]# free
              total        used        free      shared  buff/cache   available
Mem:      131586616    45267072     7446976         324    78872568    84108060
Swap:      33553404       58212    33495192
[root@server ~]# egrep 'MemTotal|MemFree|Cached|Buffers|SReclaimable' /proc/meminfo 
MemTotal:       131586616 kB
MemFree:         7341268 kB
Buffers:         3897780 kB
Cached:         25914168 kB
SwapCached:         5448 kB
SReclaimable:   47480236 kB
[root@server ~]# bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
131586616 - 7341268 - 3897780 - 25914168
94433400
131586616 - 7341268 - 3897780 - 25914168 - 47480236
46953164
[root@server ~]# free -V
free from procps-ng 3.3.10
Though when I looked at the source I cloned the procps-ng and it is still doing it.

code:
kb_main_cached = kb_page_cache + kb_slab_reclaimable;
mem_used = kb_main_total - kb_main_free - kb_main_cached - kb_main_buffers;
This has absolutely no real importance for anything, it's just something I got curious about and due to the vague keywords it's impossible to google search.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
Yeah, turns out ro-mapped pages that can be shared across processes (like libc) don't really make sense to belong to the rss of one process. But it has to be counted somewhere. It's a debate as old as time itself

evol262
Nov 30, 2010
#!/usr/bin/perl

anthonypants posted:

I updated from 27 to 28 on my RPi3 last night and either it dropped ntp or I never had ntp in the first place. I'm not entirely sure which is which, but it says the current time is somewhere in March and dnf's last expiration check was -58 days ago.

It's been chrony for a while

Varkk
Apr 17, 2004

Tried to update home desktop from 27 to 28 last night. Hit two package errors.
Kajongg KDE mahjong game has broken dependencies in F28. Went to uninstall it but seems to want to remove everything related to KDE Games if I try.
nss-pem has issues with architecture. Seems Wine and Steam pulls in the 32bit package and the updater is unhappy about it as it is not officially multilib.

Varkk fucked around with this message at 00:57 on May 4, 2018

Adbot
ADBOT LOVES YOU

18 Character Limit
Apr 6, 2007

Screw you, Abed;
I can fix this!
Nap Ghost

Suspicious Dish posted:

It's a debate as old as time itself

https://www.linuxatemyram.com/

My coworkers end up sending this link out in response to memory questions a bunch.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply