Why even bother with Vim or Neovim in 2022?

  Рет қаралды 39,061

Functional Industries - Linux Productivity Videos

Functional Industries - Linux Productivity Videos

2 жыл бұрын

In this video I take a look at why you should use Vim at all with some UI design theory.
Vim (or Neovim) are examples of a particular type of UI design which are common of unix or linux tool. In this video I explore the UI dichotomy of Vim.
Be Brisk: www.bebrisk.email
My dotfiles: github.com/calinleafshade/dots
Twitter: / @calinleafshade

Пікірлер: 79
@karolus__
@karolus__ 2 жыл бұрын
Drawing a line between discoverability and expressiveness was great to illustrate the case - well done! I also view user friendliness as variant that may differ depending on the user group. I.e if you design a product for wide range of people (let's say a UI for a train ticket machine) it have to be quickly discoverable - people would like to buy a ticket as fast as possible to don't miss the train ;) On the other hand if you design a product for specific group of users (like typewriters, programmers, etc.) who spent whole working day using the product, it may be less discovarable at the beginning, but in the end it could make their work way more efficient by introducing expresiveness. Btw. cool you're back here making videos, keep it up!
@jameender
@jameender 2 жыл бұрын
One of the best videos I've seen on why use vim that actually talks about not everyone needing to use it (for example that they don't manipulate text that often).
@FunctionalIndustries
@FunctionalIndustries 2 жыл бұрын
Thank you, that's absolutely what I was going for. There's too much "VIM IS BEST!" talk that goes on without thinking about actual use cases.
@yash1152
@yash1152 3 ай бұрын
the thing is, you don't know if u need it unless u try to use it. vim opens up a new way to think about all text manipulation operation. this alone is good enough reason for everyone (see "everyone" below) to at least _learn its basics_ and try it for some days and keep its good parts in their mind as a "useful tool" and use it when the need comes. imo everyone who uses computer for anything text: be it notes, diary, office docx, or even _file names_ ; needs to manipulate text. think about bulk renaming files for example. who doesn't need to do that one day or other...
@Jadoremalangue
@Jadoremalangue 2 жыл бұрын
Great video again! Love seeing a new video from you, instant must watch
@FroL_Onn
@FroL_Onn 2 жыл бұрын
Nice videos! Great format: the presentation with the beautiful live background! And the videos content is awesome! Please keep up!
@pratikmahamuni4856
@pratikmahamuni4856 2 жыл бұрын
Its a great to see (and hear) some sensible arguments rather than some "brogrammer" tell you how you should use one thing or the other!
@rouchar
@rouchar 2 жыл бұрын
The best explanation I've heard yet. This went to my favourites and I'll use it to (hopefully) settle some of those notorious Nano vs Vim debates :)
@RolandAyala
@RolandAyala 5 ай бұрын
@5:05 - 5:20 is poetic and great advice for anybody considering using vim over GUI editor / IDE, and applies to so many other things in life as well.
@jessehigginson
@jessehigginson Жыл бұрын
Great video! Very balanced. If I may suggest, the importance of discoverability only plummets over time for the things you do regularly. The moment you need to accomplish something new (or differently to the way you normally accomplish it), discoverability suddenly becomes very important again.
@jrr2479
@jrr2479 2 жыл бұрын
I foolishly resisted really learning vim for such a long time since I had no idea of the awesomeness of editing with vi-motions, macros, ++. I really got going by using a toggleable vim Plugin in my IDE, still able to fall back on known shortcuts and methods was nice. Run through vimtutor several times over a few weeks and force yourself to use it on real code. A bit of a learning curve to get decent yes, but sooo worth it. Good argument for a simple to install preconfigured vim GUI app with meaningful menus, out of the box plugins, configuration, defaults, to ease the entry until you can/want to hang with the cool kids using nvim built from source in a terminal. (Yeah, sure clone a good repo config, and the builtin help is nice once you have learned how to navigate it)
@limitless1692
@limitless1692 Жыл бұрын
Yeah.. I started using VIM aswell. I was an Atom user, but Microsoft abandonet it, well they will in December 2022.. So I decided to take the plunge and dive deep into VIM. I start to see the benefits already... And I love to mess around with my `.vimrc` file hahahaha ;)
@marvinfariasrodrigues
@marvinfariasrodrigues 3 ай бұрын
Entered the video trying to figure if it worth using vim and learned a lot of other useful stuff. Thanks for the video!
@limitless1692
@limitless1692 Жыл бұрын
Amaizing video. Really nice and simple comparison, that it is easy to understand.
@nikfp
@nikfp Жыл бұрын
I think this is mostly true, but I've found with Neovim that there is a point past "expressiveness" where you can reach "discoverable expressiveness". Case in point: in my current setup I can both configure it any way I could ever imagine, and I also have fuzzy finding search tools for files, words in files, keymaps, help documents for Neovim core and plugins, etc. It's all within easy reach, so the further I go, the more discoverable it becomes. Couple that with the ability to set it up exactly how I want it to work and it becomes a very intuitive user experience that "gets out of the way" and lets me translate thought to code with much less friction. It was never about speed for me, it was about getting the point I'm at now. And I am very happy with it.
@yvrelna
@yvrelna 2 жыл бұрын
I don't think drawing a line between discoverability and expressiveness is really accurate here. You need a 2 dimensional plot, one axis is discoverability, the other is expressiveness. In this plot, there's a line connecting "maximum expressiveness, little discoverability" and "maximum discoverability, little expressiveness". This is the "optimal trade-off line". Poor user interface can put a user interface below the "optimal trade-off line"; it is possible to build a user interface that's both non-discoverable and non expressive, but a user interface that's above the "optimal trade-off line" is unachievable, because, as you rightly said, as you improve expressiveness, you often has to sacrifice discoverability and vice versa.
@FunctionalIndustries
@FunctionalIndustries 2 жыл бұрын
Yea, I'd be happy with a 2d representation. It's not 100% true that it's a spectrum between the two but I guess I was sacrificing correctness for clarity. I guess the point I was trying to make is that expressiveness in an interface is important for professional tools and often comes at the cost of discoverability.
@freshhawk2640
@freshhawk2640 2 жыл бұрын
This makes the point very well, great job. It is a common red flag for UI designers to be unaware of different types of users, especially expert users and expert interfaces (which exist in all fields), and to assume that all products are aimed at beginners and on-ramping new users. I've seen plenty of them blow an interview with these kinds of opinions, including at companies that build expert products (with expert, non-discoverable, interfaces). My gut says it is the result of so many UI jobs being solely focused on inbound web leads and sales/sign-up funnels and little experience with other classes of user, and probably Apple's massive influence, but I'm not sure. It makes for great screening questions at least, but hopefully it will stop being so effective someday.
@tonyramirez5707
@tonyramirez5707 2 жыл бұрын
I just discovered your channel so I don't know if you ever tried it. But with that soothing voice and general setup I would love to listen to longer videos, quite in a podcast setup. I don't know if it would work but I can assure you would have at least one listener!
@AxL456
@AxL456 2 жыл бұрын
best explanation ive come so far about this subject on Vim VS anything-else
@rahuldev2533
@rahuldev2533 2 жыл бұрын
Once you spent some time with vim basics in starting days you will never forget to use it, it's like learning bicycle, once you learn it even you drive after 3 years, your muscles knows what to do. I use it after 3 years my fingers knows what keys to press and stay on alphabet keys for all work.
@linuxlegion4312
@linuxlegion4312 2 жыл бұрын
Nice analysis 👍.
@snowmanflo
@snowmanflo 2 жыл бұрын
You're brilliant!!!
@deepbuilds4553
@deepbuilds4553 2 жыл бұрын
Your channel is a hidden gem, you should make more random videos like this.
@deepbuilds4553
@deepbuilds4553 2 жыл бұрын
Since you are productivity focused: any thoughts on Obsidian? I've been trying it (in VIM mode of course), and it's pretty expressive (with low discoverability). Kind of a solution that better addresses your note taking video from a couple years ago.
@FunctionalIndustries
@FunctionalIndustries 2 жыл бұрын
Obsidian is great! I like it because it allows you to keep hold of your data while offering ancillary services. It's the perfect business model for people who like to keep control of personal data.
@deepbuilds4553
@deepbuilds4553 2 жыл бұрын
@@FunctionalIndustries Can you make a video on how you use it? Your take on how to use it is probably very unique and valuable!
@ipelengmolete161
@ipelengmolete161 Жыл бұрын
I think this video best puts into words how to explain my decision to switch over to vim. I'd say, I got tired of VSCode bloat (went too down far the discoverability tunnel) but his explanation sounds much nicer!
@tobias-edwards
@tobias-edwards 2 жыл бұрын
Crystal clear voice, must be from all those clouds you're inhaling
@fabricehategekimana5350
@fabricehategekimana5350 2 жыл бұрын
Thanks for the video! At a time when the internet community is debating with violence and lack of humanity, your calm and thoughtful way makes a difference. I'm glad someone like you is standing up for Vim
@ddknight1
@ddknight1 2 жыл бұрын
Such tweets are typical toxic ignorance of the people: blame without investigation. I just don't put attention to such toxic people anymore, and my life became better. Thanks for video's author who spent his own time to make such a great answer! But as for me I try to avoid such toxic ignorant people.
@limitless1692
@limitless1692 Жыл бұрын
I agree with you.
@Max-bh8tg
@Max-bh8tg 2 жыл бұрын
The main benefit is that you don't need to be an electron goblin anymore.
@amit12000
@amit12000 2 жыл бұрын
Great video
@zenshade2000
@zenshade2000 2 жыл бұрын
My immediate thought when reading the video title was, "Why bother learning the piano when we have these perfectly functional tin cans we can bang on to produce sounds."
@jerbear7952
@jerbear7952 5 ай бұрын
As a drummer, I kind of feel like you are looking for trouble buddy. :)
@horaciomlhh
@horaciomlhh 2 жыл бұрын
great points
@simbadlemarin1815
@simbadlemarin1815 Жыл бұрын
Sometimes, an engineer designed user interface just makes the most sense, prettiness sometimes comes at the cost of efficiency and functionality -- vim user here, well neovim mostly
@benamato2880
@benamato2880 Жыл бұрын
Expression is a good way of putting it. I mean it's like musical instruments ... which are not designed to make it easy for beginners primarily. They are designed for those who have the patience to make them essentially part of their body , or muscle memory. And then magic can happen :)
@FuZZbaLLbee
@FuZZbaLLbee 2 жыл бұрын
The reason I am debating getting into VIM is the ability to work on a server that doesn’t have a desktop UI
@velius_development
@velius_development Жыл бұрын
You can do that with vscode servers as well
@CipherOne
@CipherOne Жыл бұрын
I like your reasoning.
@markborza5387
@markborza5387 2 жыл бұрын
Vanilla GNU emacs is pretty user friendly in regards of discoverability. 🙃
@yramagicman675
@yramagicman675 2 жыл бұрын
It's kinda funny. I fell into the meme of "I can't quit vim", but not with vim. I fell into it with vanilla emacs. Granted, this was bad terminal emacs built into macos years ago. Now I have an evil mode config that allows me to switch between vim and emacs fluidly.
@petrpechkurov3095
@petrpechkurov3095 2 жыл бұрын
I like your voice! Thanks for the video!
@MorphTW
@MorphTW 2 жыл бұрын
Agree!
@Little-bird-told-me
@Little-bird-told-me 2 жыл бұрын
Classy !
@marcelofernandes6501
@marcelofernandes6501 2 жыл бұрын
I've tried to sing up for the newsletter, but I'm not sure it worked. The website just refreshed the page, I'm not sure if my email got in or not (didn't receive anything in my mail box to confirm either).
@FunctionalIndustries
@FunctionalIndustries 2 жыл бұрын
Thank you so much! You're right that it was broken but it should be fixed now.
@arsenskavin130
@arsenskavin130 Жыл бұрын
Totally agree.
@ervinpm
@ervinpm 2 жыл бұрын
Simple yet powerful video, just like vim ;)
@philipkaim7447
@philipkaim7447 Жыл бұрын
Where did you get that background?
@sanjeetkumar-np6up
@sanjeetkumar-np6up Жыл бұрын
UPDATE :- vim9 has new scripting language which is fast and resembles general purpose language. :)
@sorrrrra4719
@sorrrrra4719 2 жыл бұрын
You have such a smooth voice! lul
@PeterSoftwareHouse
@PeterSoftwareHouse 2 жыл бұрын
Vim is not just a tool, it's completely life-changing.
@TheLinuxCast
@TheLinuxCast 2 жыл бұрын
Hex cameo.
@FunctionalIndustries
@FunctionalIndustries 2 жыл бұрын
Gotta have that star power for any video.
@thiagolopes4978
@thiagolopes4978 2 жыл бұрын
Still the same wallpaper?
@DMWatchesYoutube
@DMWatchesYoutube Жыл бұрын
We need a word for people who could use these kinds of editors to their fullest I offer texttitian
@tanko.reactions176
@tanko.reactions176 5 ай бұрын
vim and i3wm are the best things that ever happened to computers.
@yash1152
@yash1152 3 ай бұрын
0:24 _"is cancer. Avoid it ... created their own cult."_ this part applies to another TUI editor which calls itself "post modern" imo too.
@psicoentrpica2890
@psicoentrpica2890 Жыл бұрын
day.
@Alexandrebluenote
@Alexandrebluenote Жыл бұрын
man vim .
@KevinGenus
@KevinGenus 2 жыл бұрын
I remember when there was only vi, then came vim with all these new features, then nvim. I loves me some cancer.
@Axlefublr
@Axlefublr Жыл бұрын
My setup is vscode with the neovim extension. In this case, I get to have both discoverability and expressiveness (former from vscode, latter from neovim)
@kzhang9243
@kzhang9243 2 жыл бұрын
:-D
@technicalboy1816
@technicalboy1816 2 жыл бұрын
Making yourself feel superior doesn't make you superior.
@thegameoflife9179
@thegameoflife9179 Жыл бұрын
Rather than all those fancy words it would have been a lot quicker and easier to just say... one text editor (vim or neovim) are complex editors and will need lots of time to just learn how to do basic things but if you stick with it then eventually you may be able to do more things more quickly than what you would in most other text editors... however if you think you will not be able to put in the learning time then go grab a more user friendly text editor like VSCode, UltraEdit, Notepad++, EmEditor or one of many other text editors out there.
@FunctionalIndustries
@FunctionalIndustries Жыл бұрын
Were the fancy words too difficult for you?
@thegameoflife9179
@thegameoflife9179 Жыл бұрын
@@FunctionalIndustries no, but making something sound more complex than it needs to be can put people off... learning any text editor is like learning anything else, the more you put in, the more you get out... my favourite is Emacs, having to switch modes i always thought was a drag, not only that but once you've switched modes some of the default keys are not exactly well thought out, except for obvious ones like w for word, but then you have '*' to search for the word under the cursor, what the hell is that all about! No thanks
@user-lb1ib8rz4h
@user-lb1ib8rz4h 2 жыл бұрын
i don't think this video actually answered the question posed. for your example at 3:55, this is what i fundamentally don't understand about vim. first of all, i don't believe vim even has a motion to even go to the start of a paragraph, } takes you to the END of the next paragraph. sure you can maybe chain some motions together, but then that defeats the whole productivity benefit right? secondly, what is the use case for such a contrived example? who is out here counting Fs in their document, without miscounting, and jumping to the exact F they want? and what are they doing afterwards? i see these same sort of strange examples in almost every video about vim, like "delete 20 lines at once" - ok, sure 20dd does the trick but you'll need to do maths just to calculate how many lines to delete. dunno about you but I don't sit there counting lines when I'm getting work done. if we're talking about expressiveness, these are not the kind of commands i would want to express as a programmer, so vim makes no sense to me. most of what I'm doing in say vscode or jetbrains or whatever is typing, linting, refactoring, compiling, and running, not text acrobatics. the only text movement I'd generally want is to move up a block/line/character or edit stuff inside an enclosing block, and those already have built in shortcuts in any editor nowadays
@cyberdrace
@cyberdrace Жыл бұрын
{ takes you to the previous paragraph, whereas [{ takes you to the beginning of the current block, between either of those you should get the behavior you want. Chaining a bunch of motions together can still be efficient, or fast if nothing else. In vim the only limiting factor is your muscle memory and typing speed. Though I can see it not being very friendly to users who aren't at least decent at (touch-) typing. If you don't see yourself using the keyboard a lot, then there's really no point to using vim either. If you insist on working with line numbers (which you really don't have to) I would recommend :set relativenumber, so you don't have to do any of that counting you were complaining about. If you set both number and relativenumber it will still show you the absolute number of the line you're currently on, which is handy. Though the status bar tells you where you are in your file as well. But again, I don't find operations involving line counts that useful either so I mostly don't use them, which is fine. Vim is there for you to not use most of it's features and still have a good experience. As for all the things you actually use your IDE for, that's where vim plugins come in. Sure, it's a hassle to set up, while an IDE comes mostly already preconfigured, but in turn you get to eventually have your own, personal development environment that fits you like a glove. And lastly, I also just find using vim to be a lot of fun. It's like trying to get better at a cool video game, except you're actually coding or writing text, how awesome is that?? I think ppl maybe don't take that seriously enough, but getting to feel awesome and powerful (and yes, like a cool l33t hacker or whatever) while doing otherwise fairly mundane work is a huge benefit imo
@user-lb1ib8rz4h
@user-lb1ib8rz4h Жыл бұрын
@@cyberdrace I'm fine with installing plugins, i just don't see a massive productivity increase with vim or vim motions. i can type up to 100wpm and my keyboard only has blank keycaps, touch typing isn't really an issue for me. the only use case i can really appreciate is if you need to ssh into some server that only has vi(m) installed and just want to edit a file quickly and get out. but at this point I've learnt enough to do that
@loarca11
@loarca11 Жыл бұрын
You don't even have to count lmao that's why relative line numbers is a thing. Read the docs lol
@user-lb1ib8rz4h
@user-lb1ib8rz4h Жыл бұрын
@@loarca11 ReAd tHe DocS how about touch grass why would i read docs for software i'm not using lmao, genius. secondly, you didn't even read my comment, relative line numbers won't help you find the 6th F in a line. third, vim is trash
@almarn
@almarn Жыл бұрын
At least you are not wasting your time with emacs...but with vim or neovim...they are all backward tools..Productivity has NO link with a programmer editor. Typing garbage faster is producing garbage faster..those tools are totally inadequate to do refactoring, badly design solutions for code completion, endless stream of plugins or scripts...mostly unmaintained, emacs being the worst here by a mile... Looking at neovim I can already a sea of bad lua code....
@technicalboy1816
@technicalboy1816 2 жыл бұрын
Don't talk pretentious shite! - the comment had nothing to do with having a GUI-type interface.
@r2com641
@r2com641 Жыл бұрын
This video is bs. I used vim for a long time and most of the complex features it offers is unlikely to be used in 99% of time. I never need to go to “third letter of word” I do need to change word or find and change all similar words at same time and most of features like that are executed in a much better way in sublime
Vim vs Neovim in 2021 - What's the difference?
10:35
Functional Industries - Linux Productivity Videos
Рет қаралды 35 М.
Why I Switched From NEOVIM To VSCODE
13:45
Anthony GG
Рет қаралды 21 М.
A teacher captured the cutest moment at the nursery #shorts
00:33
Fabiosa Stories
Рет қаралды 19 МЛН
Best KFC Homemade For My Son #cooking #shorts
00:58
BANKII
Рет қаралды 61 МЛН
БАБУШКИН КОМПОТ В СОЛО
00:23
⚡️КАН АНДРЕЙ⚡️
Рет қаралды 15 МЛН
DEFINITELY NOT HAPPENING ON MY WATCH! 😒
00:12
Laro Benz
Рет қаралды 61 МЛН
Handling Multiple Files in vim
8:58
Functional Industries - Linux Productivity Videos
Рет қаралды 70 М.
Note Taking in neovim with markdown and pandoc and bears, oh my!
9:34
Functional Industries - Linux Productivity Videos
Рет қаралды 75 М.
My Forever Dev Workflow
16:02
typecraft
Рет қаралды 77 М.
From Vim To Zed
19:03
ThePrimeTime
Рет қаралды 233 М.
Why I Cant Stand IDE's After Using VIM | Prime Reacts
17:51
ThePrimeTime
Рет қаралды 281 М.
I ignored this incredible Neovim plugin for years!
9:03
Tom on the Internet
Рет қаралды 8 М.
Vim As Your Editor - Introduction
12:24
ThePrimeagen
Рет қаралды 844 М.
Vim Tips You Probably Never Heard of
12:11
Luke Smith
Рет қаралды 115 М.
My Dev Workflow - How I use fish, tmux, lazygit and neovim
6:24
Josh Medeski
Рет қаралды 51 М.
How to ACTUALLY switch from VS Code to Neovim
5:09
Joshua Morony
Рет қаралды 196 М.
Telefonu Parçaladım!😱
0:16
Safak Novruz
Рет қаралды 24 МЛН
Battery  low 🔋 🪫
0:10
dednahype
Рет қаралды 13 МЛН
Зарядка-брелок для Apple Watch
0:39
Rozetked
Рет қаралды 209 М.
Это Xiaomi Su7 Max 🤯 #xiaomi #su7max
1:01
Tynalieff Shorts
Рет қаралды 2 МЛН
Новые iPhone 16 и 16 Pro Max
0:42
Romancev768
Рет қаралды 1,5 МЛН