Preferences

I honestly just can't vibe with the "don't customize because you'll log into other servers" thing.

To me it feels like getting told to not put nice shelves in my home because other buildings don't have them.


It completely depends on your work environment. My experience has been doing a lot of admin work and working with distributed databases. I probably spend a third of my day in servers that are not mine. So for me it just doesn’t make sense to make a lot of configuration changes, especially changes that will end up in my muscle memory.

Now my personal computer does have much nicer color schemes and a few plugins for code dev that I don’t carry around. But even then I try to use the defaults in my IDEs and browsers, because at this point I’m on work computer number.. 11? Configuring it is starting to get old

So you spend two thirds of your day with an arm tied behind your back because one third of your day you will have to use the hand for groping in the dark...
> Configuring it is starting to get old

That's exactly the opposite of my experience. Since all my dotfiles are in Github, configuring new system is just a git clone and copying a few files around. I don't even use any config manager, since I rarely get new computers. Takes a few minutes max per machine (plus maybe package installs like zsh if it's not there already).

> Takes a few minutes max per machine (plus maybe package installs like zsh if it's not there already).

Assuming you have internet and can access GitHub. Setting up internally accessible repos for that or bake it into an image is its own excercise, which you'd have to setup again for every site and isn't there on day 0.

Even so, "a few minutes per machine" builds up quickly if that happens multiple times per day and new airgapped sites are a regular occurence. That's not including the possibly larger cost of context-switching to "customization mode" for every setup.

I do have a few dotfile customizations I carry around for sites/boxes I bother enough with but at this point they're cut down and familiar enough that it takes me a few seconds to put those in place manually from memory and dist defaults.

Minimal .profile:

VISUAL=vim EDITOR=vim

tmux and some other apps will pick up on this and switch to vi-style keybindings.

I resonate with embracing the Zen of leaning into defaults.

Same exp here, a simple clone and setup script sorts all this in a user directory.
The original statement was "vim plugins" SO yeah you can have your fancy alias or whatever but I'm with the GP that adding a bunch of cool plugins that I get used to and then... perpetually can't use because 40% of my time is spent on remote machines I don't have admin on... ehh.. quickly becomes not worth it.

It's like when I tried to get used to a DVORAK keyboard when I'd spend my weekdays in a school computer lab...

You don't need admin to install emacs packages..... I'm sure vim isn't dumb enough to require that?!
For me it was that each plugin would have to go through a security approval process and that was not something they appreciated. (e.g. they have "real work" to do), whilst mapping `n` to `nzz` or setting the regexpengine to `0` well, yeah, go for it.
Seems like a great opportunity to learn a bit about automating this set up. Really not hard to upload a .vim directory on a remote server for example.
Nah. Other people need to use them too. You just don't do that kind of stuff managing a fleet of servers. Keep it standard. Automation is yet another thing to manage and maintain. I keep all of my servers completely standard.
Surely you can put your own dotfiles into your own account on that machine, though, without impacting other people?
Not when everyone logs in as ec2-user.
That's horrific!
> Automation is yet another thing to manage and maintain

But supposedly you already have an automation that you maintain your standard servers with. Adding an Ansible role that puts .vimrc into $HOME surely isn't that much of a maintenance burden?

The better place to spend time might be the automation of operational tasks on those servers so that logging in isn’t necessary in the first place. Then you don’t have to leave your home environment and you can run whatever custom editing configuration you want. Of course the other upsides to that automation overshadow this a bit.
I'm of the opinion that if you need to log in to a server you've already failed.

Nobody should be ABLE to log in to servers by default, that's the way they become unicorns and not cattle.

"treve uploaded WHAT on the Big Bank's server?!"

Yeaah, that don't fly unless you're in a really seat-of-your-pants environment. =)

"dammit treve installed hyperland and riced the servers again" - sec team probably
Here you go

  # Roaming bashrc profile
  function sshrc() {
      BASHRC=$(cat ${HOME}/.bashrc_roaming | base64 -w 0)
      ssh -t $@ "echo \"${BASHRC}\" | base64 --decode >   ~/.bashrc_roaming; \
      bash --rcfile ~/.bashrc_roaming; \
      rm ~/.bashrc_roaming";
  }
I was thinking of exactly that. Or maybe, for an extreme version of this, one could create a Docker image with the whole dev environment, start the container at the login, bind mount / of the host somewhere and work from there. Then Ctrl-D and it's gone.
It's also super weird when people say this and then switch to another editor, then switch to something like vscode, which ignores the fact that using a souped-up local Vim and a minimal remote one is the same situation... you're getting a different experience local and remote.
It's bananas!

If the claim these folks make is "time spent struggling through a default config on an unfamiliar machine" > "time saved by crafting an workshop to fit your mind", then we are not the same.

(Probably, the dividing line here is time spent coding vs time spent managing infra.)

It's another form of perfectionist paralysis and rationalizing doing more non-value-add, error-prone, manual effort.
Also, if you have useful nice shelves that make your fridge aka postgres run better, why shouldn't we work on putting that on servers to make all fridges run better? Also, having a comparable and shared admin experience is a big deal in a team.

Like sure, if you need to quibble about red or yellow prompts, eh. But if there is a good log colorizer or analyzer that makes an expert better at handling the system, or some aliases that make a system easier to manage - I want this deployed for _all_ admins on _all_ relevant systems.

And sure, all code running on a server is a security topic. But then let's figure out a way to run your favorite tools through the software security pipeline and then deploy it to systems. Sure, I dislike installing the latest js-based npm fad on a database for a minor advantage, but if there is some well-aged tool from the postgres space... I'd probably rather work to have it.

  > I want this deployed for _all_ admins on _all_ relevant systems.
Another user above mentioned that his most important config is mapping j to gj. That would drive me nuts. When lines are so long that they wrap, I want j to go to the next line, not the next however-wide-the-terminal-is. On the off chance that I ever want that, I have gj right there at my literal fingertips.

You're never going to find a config that everybody is happy with. If that were the case, then there would be no need of config at all.

I was rather referring to things like: Aliases to access important log files. Aliases to supply security credentials to important commands. Coloring logs so relevant details are highlighted.

If your biggest problem running a system is the line-next semantic, you're in a much better place than I am. No one on the team has ever raised that.

it's going to depend on whether you're a software dev or a sre/ops person.
"Free and easy

That's my style

Howdy-do me?

Watch me smile

But fare-the-well me

After a while

'Cause I gotta roam

And any place I hang my hat is home"

Burma shave

This item has no comments currently.

Keyboard Shortcuts

Story Lists

j
Next story
k
Previous story
Shift+j
Last story
Shift+k
First story
o Enter
Go to story URL
c
Go to comments
u
Go to author

Navigation

Shift+t
Go to top stories
Shift+n
Go to new stories
Shift+b
Go to best stories
Shift+a
Go to Ask HN
Shift+s
Go to Show HN

Miscellaneous

?
Show this modal