everyone codes faster when they stop using their mouse

Поделиться
HTML-код
  • Опубликовано: 9 янв 2023
  • Developers are EXTREMELY lazy. I am no exception. Having a desktop environment that allows you to do the most coding while using the least amount of energy is key. In this video, we talk about how to setup i3, zsh and vim to make you a more efficient programmer. LETS GO!
    🏫 COURSES 🏫
    www.udemy.com/course/c-progra...
    🔥🔥🔥 SOCIALS 🔥🔥🔥
    Low Level Merch!: www.linktr.ee/lowlevellearning
    Follow me on Twitter: / lowleveltweets
    Follow me on Twitch: / lowlevellearning
    Join me on Discord!: / discord
  • НаукаНаука

Комментарии • 427

  • @freegibz
    @freegibz Год назад +262

    "the horrific purple that ubuntu comes with by default" you say while your room is illuminated that exact same shade of purple

  • @SriHarshaChilakapati
    @SriHarshaChilakapati Год назад +246

    Tabs in Vim are not the same as tabs in other text editors. Tabs of other editors are buffers in Vim, and Tabs of Vim are more like workspaces where you can save your frequently used pane layouts.

  • @bzuidgeest
    @bzuidgeest Год назад +964

    If you want to be an efficient programmer, find your own way to do it, that fits your particular job. Don't listen to people that think their way is best for all.

    • @MohammadImran-rn1vg
      @MohammadImran-rn1vg 7 месяцев назад +29

      This is true.

    • @bezorr
      @bezorr 7 месяцев назад +59

      Well, if you have enough time to study nvim and practice with your keyboard, you should. Because it's a certain way to increase productivitt

    • @bzuidgeest
      @bzuidgeest 6 месяцев назад

      @@bezorr nothing is certain. You don't know me, my work situation, my type of work. At best you know I'm a programmer. Claiming you have the answer to guaranteed productivity increase is utter bullshit.
      It's your answer, for your situation, nothing more. There are a thousand people claiming their tool is the sure fire way to do it. The arrogance is unbelievable.
      I'll give you an example, how is nvim going to help with solving complex algorithmic problems? Typing speed is meaningless in a lot of situations.

    • @xijnin
      @xijnin 6 месяцев назад

      ​​@@bezorrMan, why do you guys want so much to save 0.2255 nanoseconds of ur time?

    • @user-he4ef9br7z
      @user-he4ef9br7z 6 месяцев назад +43

      Cope.

  • @semicharmedkindofguy3088
    @semicharmedkindofguy3088 Год назад +232

    I feel like this depends on the type of code you're dealing with. If you're writing new code frequently then I can see this becoming very efficient, but in my case I'm usually dealing with large codebases with years of history, and most of my time is spent reading and figuring out the code instead of writing and for me personally I like visually arranging information on screen with my mouse.

    • @parthkanani7323
      @parthkanani7323 Год назад +7

      A lot of people are of the opinion that vim as an IDE is not as good as other text editors like sublime/vscode(atleast without the highly customized plugins available for the task). But vim def beats other editors when trying to navigate huge codebases. Personally I can't live without ctags

    • @MrDavibu
      @MrDavibu 7 месяцев назад

      @@parthkanani7323
      Really disagree, especially this whole ESC+ : or ESC + /
      takes a lot longer than just using e.g. CTRL+S or CTRL+F.
      Most of the example I've seen where it can be useful are for bad code bases, where code redundancy is at place. Like Multi-Cursor replace or more extreme search and replace patterns.
      If you like this kind of workflow, then please go ahead, there are definitely some neat workflows in vim, but don't point at others for not preferring that workflow style.

    • @_khaine
      @_khaine 6 месяцев назад +5

      You can still use your mouse in a tiling window manager

    • @PamellaCardoso-pp5tr
      @PamellaCardoso-pp5tr 5 месяцев назад

      ​​@@parthkanani7323Just the gd on vim Beats vscode by a mile.
      Being able to Go deep inside that API or library you installed and seeing the entire implementation without needing to look through the docs is a life savior.

    • @simonfarre4907
      @simonfarre4907 4 месяца назад

      @@parthkanani7323 Yeah ctags is the software that makes it easy not vim, so it is quite literally identical to Vscode, requiring plugins. The difference being, of course, that Vscode extensions are standardized.

  • @swozzlesticks3068
    @swozzlesticks3068 2 месяца назад +3

    I promise you that there is *only* one thing bottlenecking my coding speed and it is my brain.

  • @vladimirtchuiev2218
    @vladimirtchuiev2218 2 месяца назад +5

    Ha, it takes me back to my Starcraft 2 days where I try to out-compete my opponents in APM and multi-tasking, you kinda have to move the mouse the least amount as you can to be fast. But as time passed by, I've learned that having a fast mind is more important than having fast hands, and I fully believe it applies here as well. After some point, when programming the mind becomes the major bottleneck and all those little optimizations are not that important, especially when you're not competing against someone directly. I'm fully content with VSCode for all my coding needs.

  • @garrettbluma257
    @garrettbluma257 Год назад +16

    You can avoid the need for multiple terminal windows with the following in Vim. :map ,t :w\|:!cargo build When outside editing mode, I just type comma-T and it both saves the current file and runs whichever command I specify, without losing the editing history or having to suspend vim.

    • @PamellaCardoso-pp5tr
      @PamellaCardoso-pp5tr 5 месяцев назад

      You can also use Lua to run custom functions everytime you save on vim. You can enable that as a setting even, so It only Works in projects you want this kind of auto-reload per save.
      But using Tmux also helps with that a Lot

  • @aquilafasciata5781
    @aquilafasciata5781 6 месяцев назад +96

    Just wait until this man finds out about Alt+Tab

    • @no_name4796
      @no_name4796 7 дней назад

      Alt+tab sucks the moment you aren't just switching back and forth beetwen two apps

  • @benonardo
    @benonardo Год назад +24

    Literally all of your videos are useful, something that's really rare

  • @ExpertOfNil
    @ExpertOfNil Год назад

    Man, I've been needing this intro to i3. Thank you!

  • @TrolleyMC
    @TrolleyMC Год назад +86

    for people who aren't as knowledgeable on linux and FOSS, there are other window managers you can try if i3 isn't for you.
    I personally use AwesomeWM, it's nice, basic and had keybinds that I can remember well.
    also, compton is deprecated, picom is a suitable replacement

    • @watynecc3309
      @watynecc3309 Год назад

      Awesome wm isnt using lua ? Isnt more complicated?

    • @TrolleyMC
      @TrolleyMC Год назад +1

      @@watynecc3309 idk, I don't find it that hard to use

    • @arijanj
      @arijanj Год назад +1

      awesomewm is great - easy and very customizable

    • @vaishakhgk2006
      @vaishakhgk2006 Год назад +3

      I was using awesome wm few weeks before,
      I recently try Hyprland to check how good is window managers in wayland i liked it soo far so am using it now

    • @TrolleyMC
      @TrolleyMC Год назад +2

      @@vaishakhgk2006 damn, I have an NVIDIA card so I'm basically stuck with X for the time being

  • @crifox16
    @crifox16 Год назад +12

    running on vscode pretty much stock both on the win10 i use at work and the macbook pro i have at home, i've gotten crazy fast with it and love the versatility and extensibility. i'm on the same page as you regarding custom shortcuts and such, i love the fact that i can code just as fast on my machines as on any other i sit down at that has vscode installed

    • @crifox16
      @crifox16 Год назад +2

      also yeah i do know vscode has settings sync and that's one more reason to appreciate it, but i haven't found myself needing to customize it that much yet

  • @Parker8752
    @Parker8752 Год назад +10

    I personally use a tiling window manager (typically i3, but I have a soft spot for xmonad), alacritty for my terminal, tmux, and neovim as my main editor. Neovim within one tmux pane and a regular terminal next to it is just nicer than having two separate terminal windows open imo.

  • @azizs4319
    @azizs4319 Год назад +11

    My current config is tmux+Neovim, using Lunarvim to have a VSCode-like experience, as I switched recently (the included plugins are awesome). The fact that everything is on one terminal in full screen helps me focus more (and not think about tiling windows, commands outputs are on full-screen,...). Everything can be accessed on the same screen and the switching is super fast and whenever I need to read documentation I use my second screen.

    • @bengamedev1872
      @bengamedev1872 5 месяцев назад

      Is this still your setup? Any chance you can point me to a vid that covers this?

  • @torphedo6286
    @torphedo6286 Год назад

    beautiful, thanks for posting. I actually switched to i3 last week. It's great!

  • @okie9025
    @okie9025 Год назад +142

    Visual Studio Code by Microsoft on Windows 10 LTSC by Microsoft.

  • @replikvltyoutube3727
    @replikvltyoutube3727 Год назад +26

    Didn't think Alt-Tab is a tiling window manager!
    Edit: IMO switching to tiling WM is a bit so-so decision, its not for everyone, learn Windows explorer/GNOME/KDE hotkeys, it has a lot of useful features.
    But vim is a good choice,I use it a lot as gVim on Windows or vim on Linux

    • @watynecc3309
      @watynecc3309 Год назад +2

      Gvim is really good i also love it

  • @nglpos
    @nglpos 3 месяца назад +21

    The amount of videos on youtube by people talking about how fast they are with just a keyboard and how much better it is leads me to believe that the whole endeavor is fueled by people thinking they are cool or advanced if they do it that way. Then, of course, they want to share it, because what value is being cool if no one else see me being cool?

    • @Spiderfffun
      @Spiderfffun 2 месяца назад +2

      I don't really understand which side you are on, but honestly I can't believe somebody is against this
      Even as a cinnamon user I honestly kind of want to switch to i3, and I started to learn vim recently. I might not switch to both vim or i3, but the important thing is, i tried.

    • @JulianHaeger
      @JulianHaeger 2 месяца назад +1

      Fwiw I have no channel or public persona to buff, and I've found myself moving more and more to a keyboard centric workflow and have felt like my interaction with what I'm trying to achieve has become lower friction at each step. I would say though not to change too much all at once, as there is a mental load when trying to recall a freshly learned shortcut etc. if you try and change everything at once it feels awful. If you gradually do it, it feels great in my experience. YMMV of course

  • @toolbgtools
    @toolbgtools Год назад +22

    I love vs code because of fast and easy debugging, it's also faster in editing and moving between files particularly in big projects.

    • @megamozgs9959
      @megamozgs9959 Год назад

      You can easily turn vim or emacs into a modern IDE. That's what makes them beautiful - being able to customize them the way you want. you can even put a web browser in emacs.

    • @waterbird2686
      @waterbird2686 Год назад +8

      @@megamozgs9959 I dont get the usefulness of doing stuff like browsing the web or viewing an rss feed on emacs why don't I just use firefox with a tiling window manager

    • @megamozgs9959
      @megamozgs9959 Год назад

      @@waterbird2686 its just an example but yeah, nobody really uses this package :) its just shows you how powerful emacs is

    • @thatguynar
      @thatguynar Год назад +4

      Vscode and fast lol. Man, you make me laugh. 😂

    • @_avr314
      @_avr314 6 месяцев назад +1

      I love VS Code because I can mouse click my way through the work day while pretending that really get things done

  • @Slushee
    @Slushee Год назад +40

    I use vim for small files, config stuff. But for coding I use neovide with extensions. Having an LSP and some other fancy features really makes the experience a lot better.

    • @Mark-np5ss
      @Mark-np5ss Год назад +3

      Doesn't Vim have an LSP extension, though?

    • @raphaeld9270
      @raphaeld9270 2 месяца назад

      Why not use neovim instead of vim then? As neovide is a neovim GUI.

    • @Slushee
      @Slushee 2 месяца назад

      @@raphaeld9270 Dunno. Brainrot from over a year ago. I switched to using nvim for small files a long time ago

  • @alexe3332
    @alexe3332 Год назад +1

    Keyboard shortcuts sums up this entire video. Short cuts using different applications and the shell.

  • @ratfuk9340
    @ratfuk9340 Год назад +9

    The best thing about i3 is how easy it is to configure. I wouldn't say it's extremely extensible because it's limited to the i3 config format. To be fair, it's more than enough for most ppl but the way windows are managed in i3 "manually" rather than having a layout and a stack is more mental overhead and afaik you can't do anything about that on i3. Xmonad and dwm on the other hand are extremely extensible and there are so many patches and modules that you can choose form. Configuration is much harder though bc you need to know (at least a little bit) Haskell for Xmonad and C for dwm but you're basically only limited by your coding ability and imagination (or the patches/modules others have made).
    Standard vim is great but a little bare for programming for me. I like neovim and I try to keep it as standard as I can but I want a fuzzy finder and and LSP at the very least. I keep all my dotfiles on github so I can get to them on any new machine easily but I guess that doesn't help if you need to use vim plugins for something like vscode. Helix seems pretty nice too, basically it's similar to a fully configured neovim programming environment except it doesn't have vim's commands (its similar but not the same) which is a problem if you want like a standardized experience everywhere.

  • @cloudenvying
    @cloudenvying 7 месяцев назад

    Hey thanks so much for going over this! I recognized i3 because I use it myself but I was really curious about what shortcuts you were using in vim in your other videos. I usually see you jump around so smoothly that I am in awe and nowhere close to yet. One thing I noticed when I was working in vim on a gui-less server without i3 is that while in vim I could run bash commands with the exclamation mark. This let me test the program without closing the editor! I can see why you may not want to do that with your cargo command because you would lose the benefit of the the zsh extension that tracks your git progress.
    To me closing the editor can sometimes have the effect of me losing my train of thought so that was really helpful.
    I have been slowly watching more of your videos and I think another video sort of like this one you could do in the future is maybe go over which vim editing features you find the most helpful. You could also maybe go over some of those clips where you jump around a file a lot and say which commands you are typing.
    One tip that you might like is this extension I found for firefox called link hints. It lets you use your keyboard to click in the web browser.

  • @mangierockz7460
    @mangierockz7460 2 месяца назад

    switched from KDE Plasma to i3 after hearing about it from you. Best switch I've made,, excluding switching from windows to linux. Loving it so far!

  • @rafaeldeconde8148
    @rafaeldeconde8148 2 месяца назад

    I was today years old when I learned that vim had a default tabs, that's awesome and likely a game changer for me in the future as tabs are one of the favorite features I like in a text editor

  • @torarinvik4920
    @torarinvik4920 11 месяцев назад +2

    The primary benefit imo of using keyboard based navigation is that you dont have to switch back and forth between the mouse and the keyboard. However as I use small laptops the mousepad if often easier to use, all depending on what operation you are doing of course. And yes I have used vim bindings.What is being said "with the least amount of energy", least amount of energy when you're good, lot of energy when you are bad. And it can take a very long time for the keybindings to become so automatic that you dont have to even think about using them. So it is a long term investment where you hopefully get good at it. Btw Vim keybindings are available in many, if not most editors which is nice :)

  • @wizardnotknown
    @wizardnotknown Год назад +2

    Step one: Get another keyboard.
    Step two: Setup macros for that keyboard.
    Step three: Don't use vim.
    Step four: Install notepadqq
    Step five: Become god.

  • @_dekr0306
    @_dekr0306 Год назад +2

    I had the similar setup on my PC last year. I used Manjaro i3 so everything was setup and ready-to-use when I installed the system except some tweaks on the configuration and the compositor. For editors, I found myself jump around JetBrains IDE with Ideavim, VScode with vim extension and just nvim based on type of work I was working on. Few months ago, I switched to Archlinux with customized DWM on my PC since that's my setup I frequently use on my laptop when I have to go to campus in person. The editors I use stay the same. It's a little bit pain in a$$ to set up and customize the DWM because you need to modify the source code. Particularly, if some extensions you want to use haven't been maintained by the author for a long time to ensure that the change those extensions make on the source code of vanilla DWM don't cause any conflict, you might need to get your hand dirty and fix them on your own.

  • @InsaneFirebat
    @InsaneFirebat 5 месяцев назад +1

    Here's some free engagement.
    9:42 Seeing hexadecimal numbers in lowercase is triggering. Seeing it used inconsistently is maddening.

  • @This_Guy-
    @This_Guy- 6 месяцев назад

    I saw the vim colors you had the blue in background I really liked it when I was watching your advant of coding and I installed the same theme in my nvim

  • @hstrinzel
    @hstrinzel Год назад +1

    Reminds me of the old WordStar where you could do everything from the keyboard home row. No cursor keys, no PgUp PgDn and certainly no mouse. Mostly CTRL, which was also on the home row. That was quite fast in the old days, also for coding. But too complicated for most and got abandoned.

  • @musicdev
    @musicdev Год назад

    I love this channel so much ❤ also your VPN vid is fire

  • @ac3_train3r_blak34
    @ac3_train3r_blak34 Год назад

    We'd love a Vim tips & tricks guide from the low level king 👑

  • @probe2k
    @probe2k Год назад

    Was an all time bspwm user. Gave i3 a try, and stick with it for a couple of years. But back to i3 + st + neovim conf, and everything just fits.

  • @shizeeque
    @shizeeque Год назад +1

    I've switched from i3wm to bspwm a couple years ago. I've had 'export EDITOR=vim' in my ~/.zshrc since 2008 then I switched to NeoVim and I'm still using it today (for configs mostly) along with Helix Editor as my code editor of choice.

  • @Mamika_AFK
    @Mamika_AFK 6 месяцев назад +2

    NOOO! The mouse in the Thumbnail is exactly the one I have! 😫😭😭😭😢

  • @vedi0boy
    @vedi0boy 5 месяцев назад +1

    I feel like a lot of this could be fixed by simply adopting ALT-TAB

  • @mx338
    @mx338 8 месяцев назад

    I really love GNOME with Pop Shell for tiling, it gives you the best of both worlds, being able to do everything with a keyboard but also just a mouse when you're leaning back, the setup also couldn't be any easier as you have to install one GNOME extension.

  • @booohooooo
    @booohooooo 2 месяца назад

    it's not the first time i encounter i3, but before this video I didn't know its name and how to use it. thank you, I'm giving it a try. first impression: so f cool.

  • @rodutus
    @rodutus Месяц назад

    Really don't think it's the mouse that's holding me back, but my brains

  • @BeefdayCZ
    @BeefdayCZ Год назад

    Great! Very similiar to my setup. Just recommended switching to picom from compton. Compton has been unmantained for a long time now.

  • @laniusdev
    @laniusdev Год назад +2

    I actually use stripped down Xfce4 desktop with i3 in place of default window manager and quite customized Neovim, but it's mainly because I just need an IDE-like editor for my work. Honestly my setup is pretty complicated and maybe it could use some simplification here and there.

  • @jsaenzMusic
    @jsaenzMusic Год назад +2

    mouse-less work-flow is the best! I use keyboard short cuts to move apps to different workspaces and switch between them in gnome. Emacs is my text editor of choice though like that vi/vim is installed by default on almost all systems. Just don't want to re-train my muscle memory! :P

  • @FreshSmog
    @FreshSmog Год назад +4

    It might sound kinda weird but I've setup my laptop with GNOME as a hybrid between tiling WMs and DE. Sometimes I want to keep my hands on the keyboard, sometimes I don't, so I've settled on setting up some of my old i3 bindings to GNOME's keyboard shortcuts. I know people dislike GNOME already, much less a chimera of a tiling WM.
    It's definitely not perfect, like I can't tile windows to the corners, just on two sides. That said there are extension that can fix it.

    • @erdanxiloscient3666
      @erdanxiloscient3666 Год назад +1

      I recommend looking at the Pop_OS! gnome shell. It’s focused around allowing you to use gnome with tiling and allowing you to use keyboard navigation for almost everything. Plus, you don’t need Pop_OS! and can just install the shell on your distro, or you can just take inspiration from a few things you like about it and apply to your own config

  • @adriankal
    @adriankal Год назад +2

    I just reminded me why I switched to mac. Thousands of hour of configuring things to be just 5% faster every day is not good investment of my time.

    • @42ott90
      @42ott90 3 месяца назад

      Understandable. I only configured 1 day my gnu/linux as I wanted (was my first time using linux) and for me it's much faster with all the keybinds and I had fun configuring :D . In hours I would say 6/7 hours . I'm interested hoe long did it take for you that u say it? I want a Mac too for adobe stuff and fl studio

  • @traywor1615
    @traywor1615 Год назад +9

    Great stuff, I like the idea of a tiling window manager. One funny thing about efficency though. It allows you also to do the wrong things faster.

    • @houstonbova3136
      @houstonbova3136 6 месяцев назад +4

      Doing the wrong things faster lets you figure out it was wrong faster too though, no?

  • @victotronics
    @victotronics 2 месяца назад +1

    "A mouse is a device to point to what xterm you are going to type in next". Old joke.

  • @brgl61
    @brgl61 Год назад

    Using a tiling window manager is a great way to make sure you get a RSI

  • @evgena_
    @evgena_ Год назад +2

    Great video, however for productivity and speed I would add:
    - Tmux
    - NeoVim with:
    - Telescope: fuzzy finder for neovim
    - NerdTrees
    - LSPsaga: for quick function documentation checks
    - Zahtura or sioyek for minimal pdf viewing with vim commands
    - QuteBrowser for minimalistic browser with vim commands

    • @KenJackson_US
      @KenJackson_US Год назад

      Is QuteBrowser stable? Does it handle all sites, including your bank account?

    • @evgena_
      @evgena_ Год назад +1

      @@KenJackson_US I am using it for 1 year now as my only browser and I haven't experienced any unstable behaviour. It does lack some functions like autocomplete of passwords and such. But if you know a little python you can make it do whatever you want. I would consider it stable.

  • @dziuaftermidnight
    @dziuaftermidnight 2 месяца назад

    look at what he had to do just to mimic the power of alt+tab

  • @johnathanrhoades7751
    @johnathanrhoades7751 2 месяца назад

    I love vim. It’s so fun. I even use the vim plugin for vscode. I need to brush up again. I had a whole great setup with file explorer, etc., when I was self learning.
    So yeah, mostly currently use vscode with the vim plugin.

  • @emilepapillon2275
    @emilepapillon2275 6 месяцев назад +2

    I think it's not just lazyness, it's the micro-distractions. Like looking for the mouse cursor, that can be on another screen, then moving it to click somewhere... when you could have just flickered fingers and boom!

    • @kevinrineer5356
      @kevinrineer5356 3 месяца назад

      For me, I'm just really inaccurate with a mouse. I've closed so many tabs while trying to open them with a mouse that I finally decided to learn another way to do it. Then I went down the emacs rabbit role and I don't know where the exit is.

  • @exvimmer
    @exvimmer Год назад

    I set bash to start tmux automatically, then I've added keybindings to tmux to open lazygit (Ctrl+q+g) and a floating terminal (Ctrl+q+b) whenever I want. I use neovim with 40 plugins. Furthermore, I've hidden the status line in neovim and tmux by default. After years of experimenting, I can say that tmux + neovim is super awesome.

    • @orvvro
      @orvvro Год назад

      Even your username is 'vimmer', have you ever thought of becoming a vim consultant? Lol

  • @kevincarvalhodejesus4473
    @kevincarvalhodejesus4473 Год назад +2

    Nice video. I use i3wm with vim too, a plus is tmux, cuz tabs are great, but when you got a too many files, it gets messy. I'd say getting used to such an environment can take a while, but it's totally worth it. Nowdays i feel like i reached to a point that i don't really needa think about what i'm doing anymore.

    • @dabdoube92
      @dabdoube92 Год назад

      teach us your wisdom

    • @kevincarvalhodejesus4473
      @kevincarvalhodejesus4473 Год назад

      @@dabdoube92 There is nothing too special about my confs, but i do think when you install tmux for the first time it's not a great experience, cuz the default keybindings are kinda strange and not vim-like. For me it's important to have consistent keybindings, cuz it's easier to get productive, as you already know vim. Besides that, i just installed some other useful plugins, i think the most important one is 'tmux-ressurect' which allows me to save my tmux sessions so even if i restart my pc, they will be saved. As with i3, i kinda made the same, all the keybindings are kinda vimish. So for example, in vim if i got 2 splits i could use 'ctrl+l' or 'ctrl+h' to change the cursor focous. In my current environment, the same idea applies for tmux too, so if i got two tmux sessions and i wanna switch from one to the other, i do the same thing but with one more key, i'd do 'ctrl+a ctrl+l' and 'ctrl+a ctrl+h'. Finally, in i3 itself, if i have two tiles and i wanna change focus horizontally, i just do 'mod+l' and 'mod+h'. I found that, keeping things consistent like this is the key to master your environment, cuz as you already know vim, extending your knowledge to whatever thing that has vim keybindings goes almost effortlessly.

  • @paimonbutter
    @paimonbutter Год назад +1

    Him: recommends i3
    Me: hmm not what I would choose but okay
    Him: recommends oh my zsh
    Me: does this guy know what he's talking about

  • @m1geo
    @m1geo 10 месяцев назад +2

    I need to learn Vim. I know nano/pico like the back of my hand (probably better), but Vim does seem a bit more powerful. Need to have a play with it.
    Although all the cool kids these days are on VSCode.

  • @jerms_mcerms9231
    @jerms_mcerms9231 2 месяца назад

    Just a heads up for non qwerty users: mod keys are based on the physical location by default. So, if LLL says Alt+d and you use Dvorak, it would be Alt+e

  • @bazoo513
    @bazoo513 Год назад +1

    Pretty sane selection of tools.
    One warning for newbies about vim: it is _the_ most productive programmer's editor bar none (it was written in the days of 2400 baud serial lines, and that's why it has 6 or 7 ways to, say, change one word like a variable name; each of them is more efficient (by a keystroke, perhaps two) in different situations), but only if you learn _all of it._ Just dabbling in it is _not_ the way to go - you can dabble in mouse-oriented ones without being bitten, but not in vim.

    • @meeponinthbit3466
      @meeponinthbit3466 Год назад +2

      You can totally dabble in vi/vim. Just save often, because you'll be going "esc esc esc :q!" whenever you hit the wrong key and get lost as all hell. :)
      But it has a HUGE plus.... I've never had a system that didn't have vi available. No, it didn't have the full feature set of vim, but good ol daddy vi is ALWAYS there for you, but the basic cursor pathing is what we're after anyways and it's there.

    • @bazoo513
      @bazoo513 Год назад

      @@meeponinthbit3466 Yes, I hardly ever use any vim-specific features, except for syntax highlighting. Even bracket matching is a basic vi feature.

  • @RGjolstad
    @RGjolstad Год назад +20

    My dev setup has become VS Code with Vim-extension, but I'm interested in trying Neovim. The only thing holding me back is the upfront cost to set things up, and debug functionality.
    I have no idea how good (or bad) debugging things in Neovim is, and working with embedded stuff very much requires good debug tools, so I'm somewhat hesitant to fully commit to it.

    • @Anequit
      @Anequit Год назад +2

      Honestly, if you wanna give it a try then go for it, but if you are proficient with what you have now then I'd say don't fix what's not broken.

    • @Said-jd5wv
      @Said-jd5wv Год назад +2

      Actually, there is a plugin in Nvim called dap that uses the same debug protocol from vscode

    • @arijanj
      @arijanj Год назад +4

      i would recommend you not switch if you don't have any problems, vscode plugins are great and neovim is always going to be hard to customize and especially debug, i tried doom emacs a while ago but that wasn't right for me either, only thing i like about neovim over vscode now is how fast it is, to edit a basic text or config file and change some stuff instead of opening vscode

    • @arijanj
      @arijanj Год назад

      @@JThompson_VI It's still way too much to get used to, nvim-basic-ide by the lunar team is a much better starting point imo

    • @nathanfranck5822
      @nathanfranck5822 Год назад +1

      I committed to it for a couple months and fell off of it. Back to vscode, no vim extension, lots of mousing. I read a craptonne of code so keyboard-only UIs are actively counterproductive

  • @sutfuf6756
    @sutfuf6756 Год назад +2

    I use ratpoison on smaller screens; It's _similar_ to screen; everything is fullscreen, use modifiers to switch windows. As for editors, it depends, I have a hatred for vim as it's not vi. I learned vi on old solaris machines back in the day; "vi" mode in vim is nothing like it; I usually have to spend half a day unfscking vim to make it work properly. :-( For small things, vi/vim is fine, but, for larger projects sublime is king (for me). About to try i3, thanks for that one! :-D

  • @jp-vg9dd
    @jp-vg9dd Год назад

    I thought the video would be about github copilot jajajajjajajajajaja. Great video, love this channel

  • @tubeincompetence
    @tubeincompetence Год назад +9

    Nice to find an environment you like and I should probably improve mine. But most time is just update a few lines, then wait 5-10 minutes for a rebuild. Can't say switching windows is what takes my time :P

    • @KenJackson_US
      @KenJackson_US Год назад +1

      You can't switch windows during a 5 to 10 minute wait for a recompile? Wow.

    • @tubeincompetence
      @tubeincompetence Год назад +1

      @@KenJackson_US I'm not sure how you misunderstood it that badly. :) Point being that optimizing my window switching wouldn't really help much.
      But I can understand having an environment you feel at home with that suits your needs.

    • @Yazan_Majdalawi
      @Yazan_Majdalawi Год назад

      @@tubeincompetence I think he was trolling, or maybe drunk

  • @alandto3996
    @alandto3996 Год назад +2

    No tmux?i create a new tmux window for each project and with tmux resurrect the multiple terminals that i created gets persistent between reboots

  • @BusinessWolf1
    @BusinessWolf1 5 месяцев назад

    The more keyboard commands I learn the faster I get. I'm not even using Vim, just VSC. It's insane how slow a mouse is when you know this stuff.

  • @rlifts
    @rlifts 3 месяца назад

    Thanks for the awesome videos. Why do you use a VM? I noticed you said you installed i3 on your VM. I understand if you're doing malware analysis but for your every day work? Did you leave VIM? I see a lot of your other videos with vscode.

  • @alfred5454
    @alfred5454 6 месяцев назад

    Right on man!
    I use tmux, ksh, vi, dwm for same reasons as you stated 👍

  • @andrewhooper7603
    @andrewhooper7603 8 месяцев назад

    If you keep hitting 0, you can do a steve ballmer.

  • @Phazerville
    @Phazerville Год назад

    I kept pausing the video because I thought my cat was talking to me... turns out it's just the bg music 😂

  • @damouze
    @damouze Год назад +2

    I've had a love-hate relationship with vi(m) my entire carreer. At first it was just lack of experience, but later on it was just plain dislike of some of its features. Nowadays I think it is extremely useful for some things, like easy string search-and-replace, but completely useless (for me at least) as a daily driver. For coding and scripting I use joe. Call me heretic or an infidel, but I'll stick to my guns (and preferences).
    That said, I really enjoyed your video, so don't take this personally. In fact, I am intrigued by I3. I didnt't think tiling window managers were still a thing. They sound so old-fashioned ;-)! Doing more with the keyboard and less with the mouse would definitely be a blessing.

  • @peterjansen4826
    @peterjansen4826 Год назад +13

    I recommend to use dwm instead of i3wm, i3wm is fine but dwm has one killer feature which i3wm misses: the tag as they call it. Basically they use an xor-operation which makes it possible for the user to show any combination of workspaces and open a program (the same instance) on more than one workspace. This gives an even more flexible workflow. Example, you want to use a browser, PDF-reader and some tool to type texts but most of the time you only look at two of those, for example either the typing tool and the browser or the typing tool and the PDF-reader. Open the typing tool on two workspaces and the PDF-reader and browser on another workspace and you can easily switch all the time with which programs are visible. You could compare it a bit to the swallow-feature of i3wm but it is more flexible.

    • @wh7988
      @wh7988 6 месяцев назад

      that feature sounds like it kinda sucks, not worth switching over

  • @asdgreersf
    @asdgreersf Год назад +1

    "How to write the most amount of code while doing the least amount of work"
    Python?!

  • @delusionalaar4031
    @delusionalaar4031 Год назад

    vim is king. 10 years using it and it’s all I use.

  • @JeremyChone
    @JeremyChone 2 месяца назад

    I would generally agree, however, there is a nuance.
    I have a lot of shortcuts, but I also use exclusively the trackpad (on MacBook) which significantly reduces the movement cost of pointer activities. In fact, my wrists barely move, if at all, when I am engaged in pointer activities.
    Interestingly, what slows me down more is not the pointer actions, but the arrow keys. They are on the keyboard, but still more disruptive to my input flow than a pointer action.
    Anyway, these things are mostly personal, so it's hard to have a universal best solution, even if there are still some good rules of thumb.

  • @glorytoarstotzka330
    @glorytoarstotzka330 3 месяца назад

    I think that it's not the time that's saved as much as the focus that it takes to do actions. also when you can reliable do an action, your brain lets you chain them up. but if you have an action that is very error prone like moving your mouse fast to click a button, you typically can't add many actions to your brain queue (and if you misclick, or open the wrong thing, or anything like that, it's a massive time loss) and having a mostly-keyboard setup really lets you do the same thing, but more reliably and requires less focus and causes less frustration

  • @meqativ
    @meqativ Год назад

    didn't expect to learn about :tabe from this video lol

  • @bims_sh
    @bims_sh Год назад +1

    Actually on wayland with hyprland rn, it's looking awesome 🔥

  • @Dpaz2009
    @Dpaz2009 2 месяца назад

    sounds like speed up to carpal tunnel

  • @apmcd47
    @apmcd47 3 месяца назад

    Funnily enough MY laziness is in learning all those keyboard shortcuts. I often find it so much easier to just use the mouse than remember weird key combinations. And yes, I do use common shortcuts like ^S to save and ^Z to undo. But honestly, Alt-F4 to quit the current window? It's unnatural to do with just the left hand, so the right hand has to move all the way from the right side of the keyboard to the left, by which time it's as fast to hit that X button with the mouse.

  • @lis6502
    @lis6502 Год назад +2

    i3 wierdo here of course, however my weapon of choice for text editing is Geany.
    and i don't get this all zsh-hype, bash does its job just fine while i guess.

  • @KingJellyfishII
    @KingJellyfishII Год назад

    I would really recommend the helix text editor, as it's a bit more intuitive and has a more modern design than vim but it is still very powerful with motions and stuff.

    • @Parker8752
      @Parker8752 Год назад

      Helix has a lot to like, but I'm not a fan of how the motions and selections are tied into each other (mostly because it's different from what I'm used to with vim, tbh). Well worth taking a look at though; I just stopped using it because it works slightly differently from vim (just differently enough to mess with my muscle memory), and I use vim when I'm ssh-ing into servers.

    • @KingJellyfishII
      @KingJellyfishII Год назад

      @@Parker8752 aha yeah when something is quite close but not close enough it can be really annoying.

  • @theappearedone
    @theappearedone Год назад

    Ive been using bspwm with nvim lately, really recomend wms, was a great improvoemtn of speed

  • @georgehelyar
    @georgehelyar Год назад

    I just vscode with autosave and the watch command of whatever language I'm using at the time to run builds and unit tests continually, with a web browser and slack on another monitor, so I don't even need to stop typing. The quickest user interaction is no interaction.

  • @btarg1
    @btarg1 Год назад

    I want someone to create a tiling window manager like this that uses a "command palette" like in VS Code, or like Apple's Spotlight, where a simple search box can do everything, including opening new terminals, workspaces, commands and apps, as well as performing basic tasks like calculations and web searches

    • @mishaerementchouk
      @mishaerementchouk Год назад

      Sounds like KDE with a tiling plugin or a full-blown tiling window manager (the native tiling may be a bit too simplistic). Associate KRunner with your favorite hotkey and fire away.

    • @goawqebt6931
      @goawqebt6931 Год назад +1

      The window manager's job is to manage windows, no more, no less.
      The command palette can be a separate program.
      Your idea is already what most people use.
      menu programs such as dmenu and rofi or more user friendly launchers such as Albert can do that

  • @tchogon4692
    @tchogon4692 Год назад

    If you are using Zorin (and some other Ubuntu flavors), u can just hit Alt + Esc to jump from windows just like he was doing with i3.

  • @Jabberwockybird
    @Jabberwockybird 2 месяца назад

    Oh, I know of an OS that is based on tilable windows that you can navigate with ALT + keys

  • @Colaholiker
    @Colaholiker Год назад +4

    My opinion on this topic is somewhat different. While I agree that using the mouse a lot slows you down, my conclusions are somewhat different from yours.
    First of all, my job does not allow me the choice of Linux. Our tool chains (embedded development) are set in stone, and we only got them for Windows. And while I of course spin up a VM, write the code in there, I would still have to switch back to Windows to compile and debug, which negates any efficiency gain that a different window manager would bring.
    I also totally dislike coding in vim. I like to avoid abbreviations in any names i choose for variables and functions, so autocomplete saves a lot of time. Even more so since I added AI based autocomplete in the form of tabnine to my VS Code. It is amazing how often I only type the first three characters and BANG there is the line exactly as I wanted to type it. No matter how fast you are at typing, this is way faster.
    And like someone else mentioned down in another comment, most time is wasted waiting for things to compile anyway. (Some of our projects take 20+ minutes for a build and another 3 minutes to load onto the target hardware. And of course it won't fail on the first c file it compiles - nope, everything will compile and then you get a linker error. )
    And while Windows is notoriously known for mouse use, there is a lot that you can do beyond your normal text editing on the keyboard, like switching between windows, documents in the windows, or even different virtual desktops without needing to lift your hands off the keyboard. I mostly just use the mouse when navigating websites or datasheets to gather information, but not while I am actually writing code.

    • @sergey1519
      @sergey1519 5 месяцев назад

      Ctrl+x Tab to autocomplete a word in vim

  • @mrx6555
    @mrx6555 6 месяцев назад +1

    I mean programming ist mostly not a speed challenge. Quality code is that what matters!

  • @johanngambolputty5351
    @johanngambolputty5351 Год назад

    p10k and its setup command p10k configure is great for getting a shiny zsh prompt set up quick. That said, maybe one day, but for now, I cannot get used to tiling only wms and keyboard only text editors, maybe its not when I'm programming, but I feel its sometimes more natural to use the mouse and I like to use more or less the same setup for work and general pc use. I know that you can remap, but commands like alt+d are so awkward to press for me, I have the kde overview mapped to the super key and I feel like it gets me where I need to be very fast, I can use the arrow and enter if I want but I can also snap my mouse and click on a window very quick, and I don't have to walk through them, I go straight to the one I want, though you can always search for text in the window title as well to narrow down the windows displayed. Once windows are open and sized, I tend to keep them like that for a long time, so I just need to switch fast. ctrl+super+arrows and ctrl+shift+super+arrows to goto a virtual desktop and take a window with you respectively are pretty indispensable though. Also, micro inefficiencies are not relevant to me, because I still have plenty of macro inefficiencies...
    I use a combination of kate, spyder and vscodium as editors, depending on how many fancy features I need, sometimes just syntax highlighting and some tabs is all I need so I use kate, other times I want some fancier extensions and to mix languages, other times I fall back to a MATLAB like workflow that I'm pretty used to, which spyder mimics in python and the built in layout, auto-complete and jump to source is pretty good, with no config.
    Edit: Mind you, while I've always like how easy it is to customise KDE and its comprehensive settings GUI... the rices on some of these other wms, while I wouldn't do it for "productivity", I might eventually do it for more customisation...

  • @bzuidgeest
    @bzuidgeest Год назад +2

    I work in many languages, many os, many editors. Whatever the job requires. You think I really want to learn keyboard commands for all of them?
    Mouse might be slower, but it's convenient. This advise only makes sense if you are a single task coder.
    Also 100% keyboard is a great way to get carpal tunnel. Don't be fast, be healthy. Get your hands of the keyboard. Fast is useless if it also breaks you fast.

  • @sprytnychomik
    @sprytnychomik Год назад +2

    For tab switching in vim I use:
    map :tabprevious
    map :tabnext
    works like a charm.

    • @murzilkastepanowich5818
      @murzilkastepanowich5818 Год назад +1

      gt is a thing...?

    • @sprytnychomik
      @sprytnychomik Год назад

      @@murzilkastepanowich5818 No. gt 'is' *two* things (two keystrokes) and a half (only goes forward).

  • @xijnin
    @xijnin 6 месяцев назад

    Speed != efficiency

  • @danico94
    @danico94 Год назад

    How do you manage screens and configuration?
    Personally I found a good compromise with Regolith

  • @jwbowen
    @jwbowen Год назад +1

    Bash, vim, tmux, and i3.

  • @bartholomewrust
    @bartholomewrust 2 месяца назад

    0:05 "Imma show you how to write the most amount of code as fast as possible"
    More code does not equal more good.

  • @lerdev
    @lerdev 3 месяца назад

    checked what is my bottleneck during coding - revealed it was my head - sometimes Im just thinking instead of typing or moving mouse around. Is there any alternative to head?

  • @evolale000
    @evolale000 6 месяцев назад

    Using a laptop with both hands over the keyboard and a thumb sometimes using the touchpad is fine too.

  • @huxleyleigh4856
    @huxleyleigh4856 Год назад

    You can include VIM in vscode and jetbrains IDEs using a lil package

  • @nachosncheez2492
    @nachosncheez2492 Год назад +4

    i use emacs for my environment. tried vim before but, elisp hits the spot for writing custom functions and plugins. Only down side is i almost do everything in emacs, and sometime always trying to improving my config file / workflow but i make me pretty productive since a manly use my keyboard but the mouse is there if i need it. 🛩

    • @KenJackson_US
      @KenJackson_US Год назад +1

      Years ago I used "Gnus" and then "vm" as my email client. But it finally got to the point that most email was HTML, which was a boor but unstoppable so I switched to something else. But for a while emacs was almost my whole desktop.

    • @nachosncheez2492
      @nachosncheez2492 Год назад +1

      @@KenJackson_US I just use emacs for org node and programming. But some people use it as an all in one tool

  • @robertweekes5783
    @robertweekes5783 5 месяцев назад

    In VS Code you can switch from your work file to the terminal with ctrl + j (hit twice to toggle terminal off & on).
    I suspect there’s a better way, I’m new to coding

  • @ikefir
    @ikefir Год назад +4

    Switched to i3 some weeks before the NY. Now I riced it and don't want to go back to gnome.
    Vim is awesome, however debugging embedded systems in it is kind of a mess as well as everything that has to do with intellisense/autocompletion.
    Maybe you can make a video on how to properly configure it for that task.
    Otherwise I just accept having to touch the mouse when working with vscode.

    • @kirianguiller5130
      @kirianguiller5130 4 месяца назад

      You found how to do intellisense/autocompletion with your setup ?

    • @MePatrick73
      @MePatrick73 3 месяца назад

      ​@@kirianguiller5130 for regular vim you can use coc as a lsp client. Neovim has a built in lsp client, which you can use to interact with any language servers you want.