this post was submitted on 09 Jun 2025
577 points (100.0% liked)

Programmer Humor

24291 readers
529 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 97 points 1 week ago (2 children)

I don't know why there's so much hate for Vim. It's simple- just use it as your default text editor since you first started using computers, and keep using it forever, and problem solved!

[–] [email protected] 70 points 1 week ago (2 children)

Setup for the overused joke - I've been using vim since I first started using a computer, I just can't quit.

[–] [email protected] 1 points 3 days ago (1 children)

VIM really does have everything. Even a fully functional internet browser. 🙂

[–] [email protected] 1 points 2 days ago

yeah, but emacs still wins out in capabilities. https://xkcd.com/378/

load more comments (1 replies)
[–] [email protected] 6 points 1 week ago* (last edited 1 week ago) (1 children)

:set nocompat

Why VIM decided to make itself run just like VI (by default) is beyond me. Isn’t the long name “VI Improved”?

[–] [email protected] 16 points 1 week ago

Vims defaults are quite crap overall. It is why everyone needs 100s of lines of configs and many plugins to turn it into something decent. Well worth the setup but it could go a long way to making things nicer to use out the box.

[–] [email protected] 37 points 1 week ago

I switched from vi to vim in 1994 and found it immediately obvious how to quit — it was just like vi!

I guess I'll never understand these memes.

[–] [email protected] 36 points 1 week ago* (last edited 1 week ago) (7 children)

Personally, I have seen so many memes about exiting vim that by the time I got to use it for the first time, exiting it was a no-brainer.

For any newbies out there, the command is

:wq
[–] [email protected] 30 points 1 week ago (1 children)

Just to add: possible need to tap esc first, as your random flailing probably put you in insert mode, or something more exotic.

And only add w if you want to save the file. :q! If you don't

[–] [email protected] 7 points 1 week ago (1 children)

! If you edited the buffer at all. 👍

[–] [email protected] 8 points 1 week ago

With random flailing, most likely

[–] [email protected] 16 points 1 week ago* (last edited 1 week ago) (2 children)

😳

:w = write; or overwrite if the file already exists.

Please don’t give blanket destructive advice.

load more comments (2 replies)
[–] [email protected] 15 points 1 week ago (1 children)

also worth noting you open vim the first time, you get a huge ass splash screen telling you how to exit

load more comments (1 replies)
[–] [email protected] 6 points 1 week ago

And if you panicked before and fucked up the opened file while hammering on the keyboard:

:q!
[–] [email protected] 5 points 1 week ago (1 children)

There's also ZZ 👉😎👉 Same caveats apply, smash that fukken esc key (for bonus points rebind caps lock as esc) then ZZ Top your way out of that shit.

load more comments (1 replies)
[–] [email protected] 5 points 1 week ago

:x is also an alternative to save and quit.

Equally valid for the facial expression you'd make upon finding that out.

load more comments (1 replies)
[–] [email protected] 26 points 1 week ago (2 children)

I've recently started administering windows headless. PowerShell over SSH.

Don't have this problem on windows server!

It doesn't even have a terminal text editor

I have to install nano or use powershell commands through hoops of fire just to edit a line in a file.

Or download the file via scp, edit and reupload.

Pure Insanity.

[–] [email protected] 13 points 1 week ago (7 children)
[–] [email protected] 5 points 1 week ago

Classic DOS editor for text files, batch coding, and QBasic coding. Good times.

load more comments (6 replies)
load more comments (1 replies)
[–] [email protected] 20 points 1 week ago (6 children)

Go beyond the lazy memes and see for yourself why it has such a loyal cult!

https://openvim.com/

[–] [email protected] 21 points 1 week ago (2 children)

The loyal cult is the result of Stockholm syndrome.

[–] [email protected] 17 points 1 week ago (1 children)

Stockholm syndrome came from a bs flawed study so shrugs

[–] [email protected] 14 points 1 week ago

That's exactly what a Stockholm syndrome victim would say!

[–] [email protected] 6 points 1 week ago

Of course. We just can't quit

[–] [email protected] 8 points 1 week ago* (last edited 1 week ago) (1 children)

I use VS Code mainly and I always want to go to the end of a line and beginning. On Mac it's like CTRL+E and CTRL+A respectively. On Windows, I was like, I guess I could do Windows Key and arrows but it felt off. Installing Vim bindings on VS Code just fixed this all for me. I love it.

[edit] for non-VIM users, you can skip words and go-to braces (and delete what's in them) and highlight within quotes very easily ... for function search, the built-in VS Code is really good too. I also have Harpoon installed to hop between files. If it doesn't appeal to you, then that's cool too! Whatever keeps you in there. [/edit]

I've tried setting up my own vim stuff and I always bail out because I can't figure something out. I feel like I need to really sit with it and I'd have the perfect set up for me.

Lastly, I've installed vim for zsh and it's the best. I can hop all around my terminal and highlight and remove things. It's so beautiful.

[–] [email protected] 4 points 1 week ago (1 children)

I use VS Code mainly and I always want to go to the end of a line and beginning.

Soo... The end key and pos1 key?

[–] [email protected] 4 points 1 week ago

lol yes I understand I know I sound silly. My home/end aren't typical on my keyboard. It's like function and stuff, which breaks my flow for something I do so often.

[–] [email protected] 7 points 1 week ago (1 children)
[–] [email protected] 15 points 1 week ago* (last edited 1 week ago) (2 children)

I mean I do... with evil/vim bindings!

I love it.

No upvote tho because unnecessary 'tude

[–] [email protected] 8 points 1 week ago

Apologies for the completely random thought but this is the 2nd time in my life I’ve see “‘tude” written down. first time was in the “I can’t remember” song by Alice In Chains, so you’re in good company haha

[–] [email protected] 4 points 1 week ago

Honestly, I don't like either programmability approach (vimscript/lua OR emacs-lisp), but I'll probably just stick with neovim, because when I'm on a system without my configuration, I've more productive there, and I don't want to learn enough emacs-lisp "APIs" to reproduce my somewhat small vim configuration.

[–] [email protected] 6 points 1 week ago (4 children)

Because they grew up with it? I cant think of any other reason. I used it in college for a class bcz my old as fuck professor required it. Its obtuse, old, and doesn't have a lot of functionality of modern code editors.

The only people who want to use it are people who started with it decades ago, or people who were forced to use it, and now think they're superior somehow to everyone else who doesn't use it.

[–] [email protected] 12 points 1 week ago (4 children)

The only people who want to use it are people who started with it decades ago, or people who were forced to use it, and now think they're superior somehow to everyone else who doesn't use it.

oof now that is a lazy argument, I hope you were being sarcastic!

load more comments (4 replies)
[–] [email protected] 10 points 1 week ago* (last edited 1 week ago)

I don't fit into any of those categories.

Its obtuse, old, and doesn't have a lot of functionality of modern code editors

Obtuse? Yeah. The keyboard focus means natural discoverability is low. But I immediately preferred modal editing once I learned it.

Old? Eh, most people use Neovim nowadays and write plugins in lua. Even in OG Vim, Vim9script broke compatibility for a better dev experience.

Functionality? Out of the box, it is just a text editor. But only VSCode might have a more active plugin ecosystem. ALE has been a thing for ages if it's LSP support you're looking for.

It's not better, it's not worse, I'm not in any way superior for using it, but I love it for a reason.

[–] [email protected] 6 points 1 week ago (5 children)

If you can't think of a reason, then you could have just asked. Or read a few threads here or somewhere else. But instead you went forward typing your oh so very informed opinion, which itself is a good invitation for "shut up, lousy know-nothing type of human" kind of response. I do hope you'll do better next time you see a piece of lore and culture you have no clue about

load more comments (5 replies)
[–] [email protected] 4 points 1 week ago

I was also forced to use it at uni (a few decades ago), but didn't start using it until professionally until several years into my dev career. I promise that I don't think I'm superior because I use it. But I do encourage junior developers to learn it for reasons that appealed to me.

Among other things, appealing things are modal editing (the biggest advantage IMO), it runs on pretty much on any server you will be ssh'ing into, less IDE lock in. And, there's a bunch of additional things that other editors do that I think Vim does better: regex is first class in the environment, extensible workflows, macros. Then there are definite advantages being able to quickly navigate from the home row.

I agree that some people will demonstrate their enthusiasm by bragging and being pretentious. But I don't think that's why they stick with Vim.

load more comments (2 replies)
[–] [email protected] 10 points 1 week ago (5 children)

‘vimtutor’ is your friend. Nobody sane uses vim as an IDE, but if you have to ssh to a host to fuck with a config file it’s pretty nice to know because you can guarantee that most distros have at least vi, if not vim.

[–] [email protected] 32 points 1 week ago (2 children)

Nobody sane uses vim as an IDE

Huh? Many people do this. With the right plugins and config it is just as capable as any IDE.

[–] [email protected] 19 points 1 week ago (1 children)

Many people do this.

Many people are insane.

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 9 points 1 week ago (6 children)

If you're just doing a quick config edit, nano is significantly easier to use and is also present in most distros.

Vi/Vim is useful as a customizable dev environment, but in the present there are better, more feature-rich development tools - unless you are specifically doing a lot of development in a GUI-free system, for some reason.

[–] [email protected] 10 points 1 week ago (1 children)

I mean, if youre continually updating files on remote take the time to learn vim. My God it's a million times more efficient. Even using the keybindings in an ide makes sense.

That and Im not aware that rhel distros at all have nano built in. Nothing on a random rocky 9 box I randomly sshed into just now.

[–] [email protected] 7 points 1 week ago (1 children)

Helix crew chiming in. 🙋‍♂️

load more comments (1 replies)
[–] [email protected] 4 points 1 week ago (5 children)

Im completely lost on Nano. Vim is SO much quicker.

load more comments (5 replies)
load more comments (4 replies)
[–] [email protected] 5 points 1 week ago (1 children)

If using vim makes people insane, then what does using ed makes me?

load more comments (1 replies)
load more comments (2 replies)
[–] [email protected] 9 points 1 week ago (5 children)

You have heard of :wq, but have you heard of ZZ

load more comments (5 replies)
[–] [email protected] 5 points 1 week ago

An old Buffalo NAS box made me learn vi. Because that's all it had.

Yes, this comic speaks to me.

load more comments
view more: next ›