My Dev Environment Might Surprise You...

Поділитися
Вставка
  • Опубліковано 5 лип 2024
  • Y'all asked for it - here it is! Anything I don't answer here is probably in the faq: t3.gg/faq
    Limit7k coming in CLUTCH with these edits thank you so much man
    People seem to be enjoying my instagram so follow me there? / fakiebigfoot
    Also check out my twitter / t3dotgg
    And everything else t3.gg/links
    00:00 - Intro
    02:20 - Setup Showcase
    06:00 - Conclusion
  • Наука та технологія

КОМЕНТАРІ • 333

  • @t3dotgg
    @t3dotgg  Рік тому +103

    To be VERY clear there is no problem with customizing your setup and doing the vim path!!! The “target” of this video is me five years ago.
    I’m trying to show that it is not necessary to be a “real dev” (and it’s kind of a waste when you’re still early in learning code)
    That is it. No shade. No dichotomy. Just a simple setup because that’s all I need. If y’all go after anyone because this video you got the wrong message from it

    • @cullynn
      @cullynn Рік тому +10

      Customizing your environment is not a means to be a better dev (as you said). Instead, it's an end in and of itself. It's about the craft, and maybe reducing personal friction (if it makes you code more, then good).
      If you like conformity, then most defaults are good and will get the job done. If you like curiosity, have the time, and find it enjoyable, then jump in!
      Essentially what you are saying, right?

    • @t3dotgg
      @t3dotgg  Рік тому +3

      @@cullynn yep!

    • @samarnagar9699
      @samarnagar9699 10 місяців тому +2

      agree its is a time waste i still dont have my first website up but my linux setup with tmux fzf fd nvim make me look so cool 😩😩😩

  • @dimitardimitrov3421
    @dimitardimitrov3421 Рік тому +221

    Interesting, I’m in the exact opposite boat. I’ve had the simplest setup for YEARS. Then I switched to neovim on my Mac (just wanted to learn something new and I had some free time on my hands). Later on I switched to Linux and a tiling window manager (bspwm). Yes, neovim is configured exactly to my liking, I even wrote my own monochrome theme for it, but my setup is very minimal. The one thing that changed for me however, is that I redescovered my passion for programming. I don’t know how to explain it exactly, but coding is so much more fun, I’m looking forward to writing some code in my environment, it feels cool. I’m definitely more productive, but not because I do crazy vim motions and macros and what have you, but because I have a much better motivation for coding. It’s not for everyone of course, if you’re happy where you are, no need to change, even if you move faster in vim and do things like a vim ninja, the majority of the time in a real work environment that’s really not what’s slowing you down, you think about problems, communicate, read docs etc.

    • @chrisblank489
      @chrisblank489 Рік тому +12

      I feel the same. Windows, MacOS always felt wrong to me because you work agains the OS to change the way it works. It was not really about speed. But having a System which promotes changes really helped me to enjoy using my Computer. AwesomeWM allows me to stop thinking about Window Management. Neovim allows me to navigate code without interruption.

    • @dimitardimitrov3421
      @dimitardimitrov3421 Рік тому +1

      @@chrisblank489 exactly, having a window manager, I would argue greatly *simplifies* your setup.

    • @tacokoneko
      @tacokoneko Рік тому +1

      i often feel like i am the only person who uses GNU/Linux but prefers stacking window manager over all other UI.. for my own use i vastly prefer openbox over anything else. i tried some highly recommended tiling window managers but they don't fit my workflow. I always needed to use stacking mode on practically every window, so it just makes more sense for me to have a stacking window manager to begin with. I frequently work with scans, videos, paintings and textures of art in various formats, and use the transset-df tool to change the transparency of windows and use the mouse to position them in front of other windows to trace, align, scale or compare art no matter what app the media is shown in. Each time I see someone using a tiling window manager, I ask them to try to perform that task (aligning a new image on top of itself in two different programs) so i can find out when someone configures a tiling window manager to do it faster than stacking window manager.

    • @OMGSoothsayer95
      @OMGSoothsayer95 Рік тому +3

      I'm the same, I just neovim not because it gives me productivity I use it because it's fun, and from there it enhances my productivity (by making me stay coding longer)

    • @dimitardimitrov3421
      @dimitardimitrov3421 Рік тому

      @@tacokoneko well, your workflow is quite different than mine, it seems that in your case using a WM wouldn’t make sense. For me it’s 99% - open a terminal, open a browser, open another terminal, move to another workspace, open a PDF, close terminal, move window to another workspace, play some music…

  • @JT-mr3db
    @JT-mr3db Рік тому +89

    I don’t think there’s been a single time in my career where I’ve tag teamed my or another’s laptop.

    • @cidhighwind8590
      @cidhighwind8590 4 місяці тому +1

      lol right!

    • @daphenomenalz4100
      @daphenomenalz4100 2 місяці тому

      He is a CEO too tho, so he probably has more of other work than just code

  • @zeppelin0110
    @zeppelin0110 Рік тому +73

    This is very logical. Personally, I've taken a middle of the road approach: I use vim key binding plugins in VSCode and JetBrains IDEs. That way I get 85% of the benefits of vim while getting many of the benefits an IDE provides.

    • @caioleonardo7313
      @caioleonardo7313 Рік тому +3

      I'm on the same boat, although I've been thinking about switching back to vim just because i have fun tweaking it

    • @bersK00
      @bersK00 Рік тому

      @@caioleonardo7313 I do the same as zeppelin but I like to goof around in neovim from time to time and scratch my customising itch but for work I go back to VSCode

  • @gantoreno
    @gantoreno Рік тому +30

    I want to share my story over here. I come from the same background, heavy-on customization for everything, tiling window managers, neovim, tmux, etc, etc (Arch too, btw). The thing is, once you get down the path of that level of customization, things can get... Out of hands.
    I'm a person that extremely obsesses about design, consistency, and harmony. If I choose a colorscheme for my editor, it doesn't end there. I want that on my wallpaper as well... And my terminal emulator, and my apps, and my browser, and my entire OS, and sometimes even personal devices like your phone. One might think it should end there, but for people like me, it doesn't (OCD kicking in really hard). Truth is, it never stops. Suddenly, you end up spending way more time tweaking your setup more, getting even more stressed, searching for an impossible perfection instead of getting actual work done, always a new color tweak, always a new vim plugin, always a new addition to my OS. I had to stop.
    I had to get rid of everything that I then considered my 'identity' as a developer in order to slowly heal from this toxic obsession over my tools, it was the only way I could even think on moving forward and start focusing on important stuff. Sometimes I'm still weak over the idea of going back, but it's slowly starting to disappear, as I feel myself more and more productive by caring less and less over what my setup looks like (which is not easy, 'not caring' is not something that you can't 'just do'). The only thing that remains from my old setup, is the Vim plugin that I use on VSCode (that's not going anywhere).
    Watching this video made me feel even better about my decision. It definitely isn't an easy thing to move away from everything that you considered 'important' at some point, but, as long as it allows you to focus on the right things for you, then I'd say it's totally worth it, and even therapeutic, in some sort of way. At least for people like me.

    • @t3dotgg
      @t3dotgg  Рік тому +3

    • @emptybottle1200
      @emptybottle1200 Рік тому +1

      Bro this me ryt now I'm obsessed at setting up all and never started coding. Now I stick to Gnome with VSCode before I was using DWM with Neovim and Tmux.

    • @jamtart22
      @jamtart22 5 місяців тому +1

      i cannot overstate how much this resonates with me. I am beginning to feel that it is literally therapeutic to abandon my crazy custom dotfiles

  • @derekw6811
    @derekw6811 Рік тому +23

    The fact that I operate like this has contributed to my imposter syndrome. I’ve just never been interested in the problem of customization much. It’s nice to hear your setup is “simple” too.

  • @jordialbert7612
    @jordialbert7612 Рік тому +24

    I get your point and I kind of agree, but you can set up things ones, save all config files in a dotfiles repo, create an install script and you are ready to go. I can setup a new mac also in an hour just cloning my dotfiles repo and running my install script. Then I have my terminal setup as I am used to, my editors, my basic programs I use almost everywhere, my Raycast configuration with all the extensions setup… and it doesnt take that much time. I would say it’s not about going crazy with your setup, it’s about do something that you feel comfortable with and helps you get your shit done, and on top of that make it easy to replicate anywhere

    • @74Bagas
      @74Bagas Рік тому

      yes.. i took that point, even from this video, just like he said for tmux. i am not crazy with my TWM (or neovim), yes it still took time, but it is worth. for me, abusing "ctrl + tab" gave me anxiety haha at least in windows. workspace works for me, and it is simple.
      btw, when it comes to vscode, i think that's when i am going crazy, i keep installing shit.. haha it is fun also.

  • @ivanbragin7932
    @ivanbragin7932 Рік тому +4

    This is the workflow I am going for when I am developing my software - the closer to vanilla the better. It solves so much headache when you are not doing some crazy ass set ups for your app env

  • @andradedeguilherme
    @andradedeguilherme Рік тому +2

    Thanks for the video, Theo! I think this is definitely going to help me improve. I feel like I was too down into the "customization" rabbit hole, trying to achieve my. "perfect" environment. However, this was actually distracting me from getting better as a Software Engineer, since I'm feeling like I've reached a plateau it has been hard to notice any progress. Already uninstalled a lot of things lol
    Thanks again!

  • @VitorLeite83
    @VitorLeite83 Рік тому +2

    Love it! I was drowning in a sea of workspaces not long ago, clicking Ctrl Left and Right to find the one I wanted. Using more than 1 monitor just made it worse.
    Got a new laptop 2 weeks ago, and decided workspaces wasn't working for me, went with the same approach, just one workspace, and even just a single monitor. Same with apps open, trying to keep it focused to whatever I have to do in the moment and closing everything when finished. It feels great and I feel I can focus much better.
    One thin I added was Raycast to replace Spotlight. It has some extras that are useful. The one I've been using the most is the window alignment. Could also use an app, but I had issues with the keybinds conflicting when in vscode and I never bothered fixing it, issue doesn't happen with raycast.
    Oh, another thing I do, and I don't know where I picked it up, but I add a shortcut to bring up the terminal, I usually use the key just above the tab, don't use it for anything most of the time anyway, and its handy to bring the terminal up on a single key press.

  • @GamerBoyRobby
    @GamerBoyRobby Рік тому +55

    I think this can extend to many areas of software engineering and life in general. Shit doesn't need to be complex just for the sake of being complex. In many cases, a simple solution is all that's needed if it works well

    • @11WicToR11
      @11WicToR11 Рік тому

      exactly, that is the reason why "general public solution" isnt good idea. It is way too complex, it has this layer of "user will figure this out and click on something once he finds it" and that sht breaks my mind, it always makes me forget about my current idea. I see my collegues alt+tabbing to find the correct terminal emulator, or searching those code tabs for file. The more organized you are the simpler it all gets, its not harder and more complex... that is the base state, solution for "general public"

  • @robwatson826
    @robwatson826 Рік тому +3

    Oh Theo, I've been on this journey - I now use Ranger for file browsing in a Terminal, and either VSCode or PHPStorm depending on whether I've got my head in PHP or Typescript.
    The most fanciness I have these days is changing my font in my editors.
    Thanks for the CMD+Tilde shortcut, I didn't know that - that's going straight into the memory banks :)

  • @benjinguyen9965
    @benjinguyen9965 Рік тому +8

    "I think we get way too caught up in our tools."
    I disagree with this sentiment. We're programmers. Our tools are our bread and butter, whether it's a library, a language, or even an editor.
    Opting for a simpler setup with batteries included that's easier to configure isn't you being less concerned about your tools. If you're using VSCode you're likely still concerning yourself with plugins, linters, language servers, syntax-highlighters, key-bindings, and all that jazz. You're still configuring, just via a different medium than someone who configures via vim/neovim/emacs or what have you.
    I understand the general points of this video:
    1. You're just trying to get down and dirty with the code.
    2. Obsessing over micro-optimizations to your workflow is a distraction.
    3. You want to reduce friction of sharing your machine with someone and having them be able to code on it.
    No matter what your setup, we're all about point number 1. Anyone is subject to point 2, even if you're on VSCode. And for point 3, before I even knew Vim, I've hopped onto people's machines with VSCode installed with the Vim-extension, so there's no guarantee that even "simple" setups solve this problem.
    And lastly, I know that you're not actively trying to throw shade at config junkies, but you'd have to be tone-def as a viewer to not pick up on the shade-throwing undertones.
    Edit: Spelling

    • @mattcargile
      @mattcargile Рік тому

      Yeah he does like to present a certain stern stance and does come off judgmental in a negative connotation. I assume it may be a character he is playing for click bait?

  • @xtinctspecies
    @xtinctspecies Рік тому +11

    100% agree with your philosophy. I also use a bunch of ide with mostly defaults.. I don’t want to spend time setting things up

  • @gekkou7374
    @gekkou7374 Рік тому +7

    I don't like to setup my environment over and over, that's why i have .dot files in github lol

  • @pencilcheck
    @pencilcheck Рік тому

    i have the exact similar journey, when I was 19, 20, I was really hooked on config, setup, dev env tinkering, and also went all the way to optimize everything customize everything from the kernel, OS to window manager, and how I tab through short keys etc. I went through every major linux distro because I was trying to see which one is the best with the best package manager and workflow experience. I constantly reinstall everything all the time. now, same thing, have a macbook and one config, one terminal (I use kitty), tmux, and vim and that's it. I don't really use IDE, but if I have to I will use it too but I also felt like all those setup are a waste of time, the biggest time sink is not about coding ability, it is more about understanding of what you need to do to deliver, sometimes and often times it is not about coding more, it is more about coding the right thing

  • @mrdbourke
    @mrdbourke Рік тому +4

    You just changed my life with the Cmd + ~ trick… serial 3-4x Chrome + 2-3x VS Code window user here. Thank you 🙏

    • @rowhen_
      @rowhen_ Рік тому

      yo nice to see you here!

  • @quelchx
    @quelchx Рік тому +3

    Amen to your ending statement. I have this mindset with a lot of things I approach in life and I have became very good at many things quickly. People around me think I'm very smart, but I'd say I'm not smart, I'm simple.

  • @DerChrilleAusBln
    @DerChrilleAusBln Рік тому +4

    Thanks for this.
    There are more “Stock/vanilla” MacOS key bindings which are pretty good as well, beyond CMD Tab/~ and get you pretty far with editing code.
    Want to jump between words? Option left/right. Want to jump to the beginning/ end of a line? CMD left/right. Start/end of a file? CMD up down.
    Wanna CMD Tab but with chrome/safari tabs? ctrl Tab. Works with any other applications which uses tabs, like the stock terminal, finder, VSCode, IntelliJ etc.
    This gets me pretty darn quick with editing, multitasking etc which is why I never bothered learning vim or so. Plus this is built into every Mac and works with almost every app I use on a daily basis.

    • @yoJuicy
      @yoJuicy Рік тому

      command+option+ left or right arrows is the best way to navigate tabs!

  • @Khari99
    @Khari99 Рік тому +3

    This is a pretty great take. I always felt like I was missing out by not knowing Vim. But most of my time was spent building things and I felt like I never needed it. Im going to learn some of it for fun to see if it helps but most of my time developing is spent on thinking about how to solve problems more than it is navigating around a codebase.

    • @appuser
      @appuser Рік тому

      No one can really prove you'll be more efficient if you learn the vim or Emacs editor paradigm either (saying that as a vim user for the last 3 years), so probably a better use of time to do lots of programming instead.

  • @Serpentarious
    @Serpentarious Рік тому

    dude i felt it when you said about the overengineering and the keyboard layout because i've been there with vim, i3, colemak etc

  • @mrmorphic
    @mrmorphic Рік тому +1

    Love this. Running fullscreen windows and alt-tab is great. For me, it increases mental clarity by only looking at one thing at a time and reducing distraction. I resent having to allocate mental real estate on things that don't add value, so I keep pretty close to stock, just a few plugins etc. I'd rather use that mental real estate to have a better mental model of my programs.

  • @g.c955
    @g.c955 Рік тому +3

    Totally agree. I was obsessed with configuring my emacs and Linux environment when I was in uni. Now I really don't configure anything so I don't need to waste time getting my environment "ready" when I am on a new machine.

  • @NegativeX3R0
    @NegativeX3R0 Рік тому +3

    PREACH BROTHER! I use CMD+tab/tilde religiously.
    The only other shortcut I'd add to this list is CMD+1-9 for switching between tabs in Chrome. Ideally put the tabs you toggle between the most in the 1-4 slots so you can use the shortcut with one hand.

    • @sjadev
      @sjadev Рік тому

      I do the exact same thing, just pin the first 4 tabs that are most used.

  • @ThugLifeModafocah
    @ThugLifeModafocah 7 місяців тому

    I was needing this... thanks.

  • @nomoredarts8918
    @nomoredarts8918 Рік тому +1

    In my company, when you borrow colleague's computer, you are out

  • @raenastra
    @raenastra Рік тому

    Wow, this video is amazing. I went full neovim for almost a year, and a few months ago, I reached a similar conclusion. I've since switched back to VSCode for a greater appreciation for what it offers.
    It's great to see so many people in the comments here that have had similar experiences - I thought I was the only one.

  • @BenRangel
    @BenRangel Рік тому +1

    I agree: in a team that does physical pair programming it can be nice if everyone has a simple setup - so I don't have to struggle when using someone else's computer.
    But if someone has a custom setup I don't mind. It can be a nice way of comparing setups and finding the sweet spot.
    If everyone always used the same setup I think we'd miss out on some nifty things.
    Pair programming is a great way to learn work flow tricks, by watching how others operate.
    I have learned a lot just by watching team members with a different OS.
    And as a former Windows user who couldn't live without 50-50 window tiling on my Mac, I think some Mac users saw the benefit of that and installed Magnet thanks to me.

  • @cariyaputta
    @cariyaputta Рік тому +2

    Simple setup + Vim on VSCode = crazy productivity

  • @Chotu_chaiwala
    @Chotu_chaiwala Рік тому

    Bro thank you so much! I’ve had tNice tutorials software for like a year and was super intimidated by all the bars and windows. The way you’ve

  • @nyambe
    @nyambe Рік тому +11

    The going to the Apple store and getting a new one and up and running concept, is SO overlooked!!! It is crazy important, specially if you travel. Knowing that I can use ANY mac computer old or new and have it setup just like mine in minutes is huge. It has saved my .... plenty of times.

    • @MegaMario0007
      @MegaMario0007 Рік тому +3

      Amen to Ansible scripts

    • @11WicToR11
      @11WicToR11 Рік тому +2

      you can always carry your bootable USB with all the editors, tools you need ...so that even if you travel to country where people dont have money to buy those, you just plug-it in and reboot. So your argument could be turned around in one afternoon

    • @nodidog
      @nodidog Рік тому +1

      I recommend dotbot. With a couple of basic scripts and a Brewfile, I can turn a box-fresh machine into my fully customised environment in minutes. Programs installed, customisations applied, directories setup - all with just a single executable.

    • @11WicToR11
      @11WicToR11 Рік тому

      @@nodidog and the horrors of getting to room with only windows machines (or you dont leave land of apple, US)

    • @nodidog
      @nodidog Рік тому +1

      @@11WicToR11 It's a personal config for my own machines - I'm never going to accidentally buy a machine with Windows. Even still, the software I use is portable, so it's trivial to get a working environment set up.

  • @KevinVandyTech
    @KevinVandyTech Рік тому

    I naturally have gotten to this point over the years too. When I was a junior dev learning how to code, I used to customize every aspect of my OS and dev environment. Now I try to use the defaults for everything as much as possible.

  • @smjonas8616
    @smjonas8616 Рік тому

    I was just trying to learn i3 when I learned about the Ctrl-` trick... how did I not know about this, very useful. Thanks! As others have said, modal editing has become essential for me though :D also using Neovim is just more fun for me

  • @lilililliilil
    @lilililliilil Рік тому

    I have the exact same idea. Great video!

  • @Ali-kx7jf
    @Ali-kx7jf Рік тому +1

    I agree this! I already put 6 months learning and configuring my (vim, neovim, spacevim, nvchad, lunarvim) and I almost put my energy on configuring my Arch Linux and the KDE desktop env, however I could setup a unique and fast environment for my self and I'm super fast in my PC and even wrote my own snippet plugins and color-scheme , but when I'm at office and I don't have my setups, I really feel uncomfortable. or when I getting a friends computer to debug or what ever.
    honestly I will follow this philosophy from now... just vim keybinding works find no configs or fancy customization.
    Thanks!

  • @Argylleagen
    @Argylleagen 7 місяців тому

    I like your philosophy and I really resonate with it. I don't want to spend the next two to three months of my life learning vim and obsessing over my keybindings. If I feel like it I surely might, but I dont want to specialise in complexity especially when the defaults aren't so bad either.

  • @ivankudinov4153
    @ivankudinov4153 Рік тому +1

    Oh yes, been here. Years on my custom arch-sway-wayland setup + patched kernel with crazy nvim config => a stock macos with a vim emulator on vscode. The problem is this way you do not actually support the OSS thingy with your presence, but you may still check the repos and advocate for it or produce the oss itself with such setup. So I don't know it is a somewhat tough question.

  • @adokce
    @adokce Рік тому +3

    do you have a healthy attention span?
    for me, i want to switch to setup like premeagen's because i get distracted too easily. if i need to wait for something, or even move my hand from the keyboard to the mouse, it is somehow draining my energy. i probably have some other issues to fix within myself also haha, but i believe many people share similar experience.

    • @affluent3364
      @affluent3364 Рік тому +2

      if your attention span is this short, you have wayyy bigger issues to worry about than setting up your dev environment

  • @ronijuppi
    @ronijuppi Рік тому +2

    I pretty much agree with you. I went down the vim path few times in my career, until I figured out I'm essentially a tooling addict. I was using tooling more as procrastination than solving any real problems. I would edit my vim config multiple times a day to "squeeze out some extra efficiency", but honestly I was more just wasting time than anything. Now I just use whatever IDE/editor is most popular for the language I'm programming in, and don't touch the default settings as much as possible. I'm way more productive today than back in my tooling addiction days. Nothing against people who do like using vim/emacs/etc though.

  • @cassianofranco3082
    @cassianofranco3082 Рік тому +1

    If you are coding in windows/wsl and have a 49" ultrawide display, I recomend power toys, pin everything except VS Code and use workspaces to move between vscode instances keeping your browser in all workspaces.

  • @marekbee
    @marekbee Рік тому +3

    I thought going full-screen on Mack is the only option… Thanks to your video, I learned that I can maximize window easily without having to swipe between them… As a Linux user, that was the main pain point that I had while working on my work MacBook. THANK YOU

    • @mariownyou
      @mariownyou Рік тому

      how to maximise window without going fullscreen?

    • @marekbee
      @marekbee Рік тому

      @@mariownyou double click on the top bar of the app or use alt when clicking on the green maximize button

  • @JesseUnderscoreMartin
    @JesseUnderscoreMartin Рік тому

    How much screen real estate do you have? Do you have an extra monitor, or do you usually just work off of the laptop?

  • @sajadtorkamani9399
    @sajadtorkamani9399 Рік тому

    Thanks for that Cmd + ~ tip. That is going to make life easier 🙏

  • @AICodingAdventures
    @AICodingAdventures Рік тому

    You have super advance stuff like copilot!!! Nice video!

  • @ndstephens
    @ndstephens Рік тому

    what are you thoughts on (browser) bookmarks? doesn't look like you have many at all. i think i've gotten completely carried away with mine and am realizing i might use 20 of them.

  • @theuidawg3274
    @theuidawg3274 Рік тому

    Have you used vs code devcontainers or gitpod before? Makes your setup even simpler by hosting your dev environment inside of a Docker container with your tools preinstalled

  • @ramzihizi
    @ramzihizi Рік тому

    Good goal, and agree with most of it. The vim extension for vscode is pretty sweet though.

  • @masuya444
    @masuya444 Рік тому

    This is so true, focusing on just tools takes away the hours we could've used to just get our job done.

  • @vernongrant4710
    @vernongrant4710 Рік тому

    Very good advice!

  • @ftroks
    @ftroks Рік тому

    You just made me feel a lot better

  • @ElliotDeNolf
    @ElliotDeNolf Рік тому +2

    I would say customize your machine to your liking - along with some dotfiles and scripts to recreate your environment. Starting out, you'll want to tweak all sorts of things, but eventually, you'll reach the point of diminishing returns tweaking everything. It seems downright silly to abstain from workflow optimizations as long as they aren't excessive. On another note, I don't really understand the "borrow your coworker's laptop" segment was very odd for me. This is not something I've done or intend to do at any point in the future.

  • @tobiasmuhl7161
    @tobiasmuhl7161 Рік тому

    How did you patch the kernel to speed up the animations? Especially for full screen apps

  • @beatrizazevedo4969
    @beatrizazevedo4969 Рік тому

    Very nice and well explained. Every tNice tutorialng is crystal clear and easily understandable.

  • @AvioInsane
    @AvioInsane Рік тому +6

    No. Set up your pc the way you like it and makes you most productive. In my 12 years in IT, in my roles of system admin, devops engineer and developer, i have never needed to take a coworkers computer or them taking mine. What environment are you working in where that's a frequent occurrence? And even if i did, i'm guessing it would only be in an emergency for a short time, and i can live with using the defaults for that. The only place it actually makes sense to learn the defaults is on remote linux machines. Knowing the tools that are usually installed on most distros helps you be productive quicker.

  • @ryanz7667
    @ryanz7667 Рік тому

    This is super interesting; I’ve come to the opposite conclusion with the same goal. My workflow is my terminal and one web browser open; I can git pull almost my entire setup onto whatever machine, and instantly be right at home because all I care about is the terminal.
    All I need is my zsh, neovim, and tmux and I’m instantly at home whether it’s my MacBook, a VM on a windows machine, or a cloud computer somewhere. I even code from my iPad on an EC2 instance a ton and the simplicity of doing that in a shell vs using vscode for it is crazy.
    That said I do maintain two vscode setups (“mine” and a clean vanilla install) which I use to develop and test dev environments which other people will be working on so handoffs are smooth and they feel at home quickly.

  • @Ruslanmsv
    @Ruslanmsv Рік тому

    Didn't know the trick with cmd + ~ although i've been using macos for more than 10 years!
    Thanks! ❤

  • @fishfpv9916
    @fishfpv9916 Рік тому +4

    I have a very similar vscode setup in terms of how lightweight it is. If you haven't heard of the extensions error lens and better comments you should check them out. Personally I can't use vscode without them now

    • @zeppelin0110
      @zeppelin0110 Рік тому

      Will check those out, thanks for the recommendations

  • @poggybitz513
    @poggybitz513 Рік тому +1

    My tmux setup literally looks like that. I think I get your point about being able to share your pc. But, I never ever share my mac so yeah having customized workflow where you don't have to think about how to do what you want to do helps a tiny bit.

  • @reapersenpaix99
    @reapersenpaix99 Рік тому

    Btw you can switch between Mac Virtual Desktops with Control + Left/Right, helps when you are working with just 1 monitor

    • @thatguynar
      @thatguynar Рік тому

      I've also set up a custom keybind for this on mine to Opt+A and Opt+D makes it way easier to move to different desktops

  • @andrewcathcart
    @andrewcathcart Рік тому +2

    How often are you sharing laptops with coworkers? Seems a bit contrived?

  • @hobyt3
    @hobyt3 Рік тому +1

    The ONLY thing I really require from my workspace is to have some form of manual keyboard-based window tilling. If I can split windows with a keyboard, I'm fine.
    But that said... Vim users do look kinda epic tho

  • @3ventic
    @3ventic Рік тому +3

    Things I'd still do
    1. install Error Lens - seeing warnings and errors immediately at a glance without having to wait for a hover or having to find it in the list of errors is super convenient
    2. change the search mode setting to newEditor for a much much better multi-file search experience -- I feel like too few people even know that exists as an option and it's greatly improved my own workflow with minimal effort

    • @HappyCheeryChap
      @HappyCheeryChap Рік тому

      I love the Error Lens extension for vscode, it's actually one of the big reasons I switched from jetbrains.
      Didn't know about the `newEditor` setting, will try it out for a while, thanks! Happen to know of a way to have "Go to definition" open files in the other editor pane when you've got them split? Would go really well with this feature, along with just normal code editing.

    • @3ventic
      @3ventic Рік тому

      @@HappyCheeryChap I think you're looking for workbench.editor.revealIfOpen

    • @HappyCheeryChap
      @HappyCheeryChap Рік тому

      @@3ventic Thanks for the suggestion, I'm thinking of something different here I think (I already have revealIfOpen enabled)... What I meant here was for a situation where the destination file isn't open at all yet. Let's say you have the search results (or a source code file with calls to a function in another file) open in the left split, and some other random files open in the right split... then you click "go to definition" on something in the left... it would open the destination file in the right split, rather than the left one. This way you can open stuff without it covering the original file you were in.

    • @3ventic
      @3ventic Рік тому +1

      @@HappyCheeryChap something like the editor.action.revealDefinitionAside keyboard shortcut (ctrl+k f12 by default on win)?

    • @HappyCheeryChap
      @HappyCheeryChap Рік тому

      @@3ventic Awesome thanks so much!
      I have tried to figure it out myself a few times, but seems I wasn't searching the right keywords.
      Don't spose there's a way to make this the default ctrl-click (mouse) behavior? Tried searching the web a bit for this, but doesn't look like it's supported?

  • @solvm1652
    @solvm1652 Рік тому

    much respect

  • @Wittttte107
    @Wittttte107 Рік тому

    Kinda off topic but I would like to know what you use to see the temperature/% of the CPU/GPU in the menubar

    • @sck3570
      @sck3570 Рік тому

      tmux provides that but you can change their theme or remove them entirely

  • @ttdijkstra
    @ttdijkstra 5 місяців тому

    Simplicity is actually the reason I customize my environment. Software contains a lot of noise by default. I customize to filter out the distractions and points of friction. I store these simplification in my dotfiles so I don't have to do it again on other/new devices.

  • @stevepond14
    @stevepond14 Рік тому

    Now I want to hear about your Notion workflow.

  • @som4971
    @som4971 Рік тому

    Which software are you using to show your cpu and ram usage on top of the screen?

  • @juggy2006
    @juggy2006 Рік тому

    What are you using to auto generate the output of a console.log in-line?

  • @artyhedgehog
    @artyhedgehog Рік тому

    You're breaking my emacs-heart, dude...
    Thanks for that! =]

  • @rolandfuchs980
    @rolandfuchs980 Рік тому

    Thank you for cmd + tild, life saver.

  • @cherryramatis2508
    @cherryramatis2508 Рік тому

    I did the exact same thing but on vi, I just narrow down to as simple as possible with my workflow to the point that I only need an terminal with UNIX and bash(I'm planning to remove the bash dependency) and I'm good to go
    Many people can't use my environment, that's why I always install vscode and leave it there, but I'm fast with feel things

  • @Gustavo-cd7cn
    @Gustavo-cd7cn Рік тому

    My problem is that my laptops are really humble, they can’t handle IDEs and other GUIs opened at the same time, which is what I need sometimes, so I’m looking forward learning to work more with really lightweight versions of everything :,)

  • @rsmith31416
    @rsmith31416 Рік тому

    Based on the intro of this video, I thought it was supposed to showcase a minimal environment. However, even though it is very standard workflow, it is still far from what I would consider simple or common in other computers. zsh? VS Code? Language servers and extensions?

  • @_alexlazar_
    @_alexlazar_ Рік тому

    Thank you for making me feel good about CMD+Tab and CMD+~ ing my way through life 😂

  • @igorordecha
    @igorordecha Рік тому

    Mostly same but Macs are not popular where I live and are very expensive(even ignoring wages the they're more expensive than in the US). There are no Apple Stores in the entire country either, only resellers.
    The best second option for me is Linux. I run stock KDE on Arch(installed with a GUI installer because I don't care, I only want the package manager) with a simple theme.
    I've got two "custom" keyboard shortcuts: win+t to open the terminal(instead of Ctrl+alt+t) and win+shift+s to take a screenshot with flameshot (like on Windows).
    My shell is ZSH with a few plugins to make the autocomplete better(fixes misspelled commands, filenames) and aliases that add -v to cp, mv, rm, chmod etc.
    My vscodium(OSS version of vsc) is VERY stock. I only use material icons so I know which file it which just by looking at the icon. No themes, no custom fonts, nothing.

  • @impranksterw9145
    @impranksterw9145 Рік тому +1

    6:29 how you got hooked up in this all the way back in 1920?

  • @mikolv21
    @mikolv21 Рік тому

    I also keep my setup as lightweight as possible, the only thing I swear by is custom snippets in vscode

  • @AlexandrCherednichenko
    @AlexandrCherednichenko Рік тому

    bruh! `cmd + ~` what?! How I didn't know it after 11 years developing on mac! This is the most useful video on your channel for me. Thank you!

  • @aaaaanh
    @aaaaanh Рік тому +1

    Fuuuuuuuuuuq... thanks for the enlightenment on cmd + tilde

  • @fliplucky8813
    @fliplucky8813 Рік тому

    On one hand, I LOVE everything possible with nvim, but on the other hand, i hate all the troubleshooting to get stuff working.
    My work provides Storm as IDE, i used a lot of VSCode, and still do as scratchpad.
    One thing though, that makes my workspace less accessible to my colleagues. I have setup the vim config in every IDE i use
    simply because i love the text navigation + editing ease.
    I guess its a preference

  • @ryanleemartin7758
    @ryanleemartin7758 Рік тому

    Honestly, this is a great counter to the popular idea that you can't be an efficient programmer if you don't have a tiling window manager and vim in the terminal for code. I do think internalizing basic vim keybindings for whatever IDE / code editor is a huge value add.

  • @p_o_z_e
    @p_o_z_e 3 місяці тому

    Hey, what type of macbook do you use? Air or pro?

  • @007arek
    @007arek Рік тому

    I only partially agree. Of course, you can over tweak your setup and it'd be good to let your coworker code on your machine. Speed isn't that important, but ergonomic aspects should.
    WM are generally better at working on the computer. Also, programs that have configuration in the file are a time saver when you have to set up your environment.

  • @FlintBits
    @FlintBits 5 місяців тому

    Yes! This deserves so many more views! People (myself included) get stuck in their learning and divert their attention. Map isn’t working? I should learn Linux and install i3 with vim and rice the whole thing. No, fix the problem and keep being productive.

  • @cdslxc
    @cdslxc Рік тому +10

    I use Cmd + ~ to switch between my porn tab and work tab since high school.

    • @sck3570
      @sck3570 Рік тому +2

      Thats some dedication right there, hell yeah brother 🍷

  • @eango
    @eango Рік тому

    based once again. i also used be messing around with i3, polybar, emacs, etc while in college and though while fun did realize it is just a waste of time as well shortly after college.
    my setup is similar, though i do use macs "workspaces" that is similar to i3, just swipe my three fingers on the pad to side to change. Though my second window is just for listening to youtube videos, podcasts, and twitch while i work. Nice way to separate my "work mode" from "waste time" mode.

  • @nobodyofconsequence6522
    @nobodyofconsequence6522 2 місяці тому

    I code in kate. I don't even have especially good auto complete. The only especially weird setting I use is visable whitespace. The only weird thing my desktop does is the present windows effect if I move my mouse to the bottom right corner. Besides the abjact luxury of using vscode and having real autocomplete that remembers context on a more than per file basis you are a man after my own heart

  • @wdestroier
    @wdestroier Рік тому

    I just tried the Rewrap extension and it works on Windows! :)

  • @GAoctavio
    @GAoctavio 11 місяців тому +1

    Finally I agree with you on something lol... Used to do the whole arch wm thing... Now I just use stock Ubuntu with VS Code, stock terminal, 100% reproducible, trivial to setup. Yes it's marginally slower switching windows but my job is programming not switching windows

    • @scally9341
      @scally9341 10 місяців тому

      +1 on using stock OS. Never went that deep but yeah I landed on plain Fedora and just haul around my kitty config. I have been using Lunarvim a lot, which complicates things sometimes and i probably just need to take the mainstream approach and use the damn tool that everyone else is using and stop thinking i’m so quirky by using something dogmatically, just because it’s cool to use

    • @adreto2978
      @adreto2978 6 місяців тому

      Fax and gnome hotkeys are good enough for windows anyway

  • @Learnwithjoseph
    @Learnwithjoseph Рік тому

    big thanks to cloak extension didn't knew such an extension existed

  • @mikaelfrosthage4375
    @mikaelfrosthage4375 Рік тому +1

    Sure, whatever floats your boat, for me there is no going back once I got used to Vim. However, didn't know about cmd + ` or alt ` on linux. Definitely going to use that going forward.

    • @ոakedsquirtle
      @ոakedsquirtle Рік тому

      Whatever floats your bloat 🤣

    • @mikaelfrosthage4375
      @mikaelfrosthage4375 Рік тому

      I'm talking about vim plugins for either VS Code or Jetbrains IDE's. Not using them feels a bit weird as you just disable them if someone needs to use your computer.

  • @nathanfries797
    @nathanfries797 Рік тому +6

    Docker remote dev containers are fantastic for environment config. You can specify vscode plugins in the devconfig, not to mention the other benefits of container dev.
    Onboarding can be as simple as
    1. Download and install VSCode
    2. Download and install Docker
    3. Log in to Git Provider
    4. Select repo in vscode
    5. Enjoy

    • @RedspartHD
      @RedspartHD Рік тому

      I have brought organization onboarding times from 2 weeks to merely a day using this exact setup here.

    • @t3dotgg
      @t3dotgg  Рік тому +2

      Yeah let’s just wreck all of my team’s battery life and performance because I have dev env options i want to enforce on others 😅😅
      Seriously tho try to avoid Docker if you don’t need it. You might need it but often don’t

    • @nathanfries797
      @nathanfries797 Рік тому +1

      If a node process is killing your battery simply because docker is running, something’s wrong.

  • @webflyer035
    @webflyer035 Рік тому

    Here is mystup:
    1. A Linux distro(just because I feel more comfortable in linux then windows) with custom keyboard shortcuts for window position & desktop switching
    2. VSCode,
    3. Default terminal
    4. A web browser
    (That's it)

  • @MarkDeibert
    @MarkDeibert Рік тому

    Its like you're in my brain. I was literally looking at Neovim yesterday, thinking this is pretty cool, I should switch. But your're totally right, no gd reason to go down that rabbit hole.

    • @paologonzales4361
      @paologonzales4361 Рік тому

      HAHAHAH neovim is not like switching between your tabs, you wont get any faster on clicking and highlighting in your va code than learning vim once. But my advice for you is just use vim extension on your vs code first and see if you would still love the normal one

  • @lucidmach
    @lucidmach Рік тому

    The CMD + Tab / CMD + ~ is 💥💥💥💥
    also ik win + 1/2/3... opens the 1/2/3 app in the taskbar on windows is there anything like that on macos

  • @atam3977
    @atam3977 9 місяців тому

    i3wm + vim here for years (linux, who neds mac or win?!). No fancy setup, defaults with a little customization and a few new key shortcuts. Light theme, 'monochrome' colorschemes and right readable fonts - this is boost for productivity. Vim doesn't directly mean overengineering or overthinking. More important than plugins is to get used to, just some 'vimkata' from time to time. I can't imagine writing code or notes or documentation without vim-like keys and its useful shortcuts anymore. I do other things not only coding at the same time at work, so switching between workplaces are useful. 2-3 windows tilled side-by-side on ultra-widescreen are more handy than tabbing between windows.
    But I like your point of view. Just use right tools for the job and for your workflow.

  • @devhulk
    @devhulk Рік тому

    I agree it doesn’t really matter much if your doing just front end and API dev. I think it makes a big difference for cloud/DevOps engineers. But you can still get by fine. Just use what you like 🤷

  • @apresthus87
    @apresthus87 Рік тому

    As I've gotten older I have come to the same conclusions. I do like to full screen everything on my mac when I work though. When I say everything, I mean Google Chrome with the app or website I'm working on and VSCode instances for various projects Im working on. I also have iTerm running but it's not something I access all that much, other than to reboot servers or read logs. So I just switch between each thing with my keyboard and I find it to be plenty fast enough. But I understand the temptations. When I was in my early 20's I used to spend hours tinkering on my Linux box. Priorities changed I guess :)

  • @hanes2
    @hanes2 Рік тому

    I used to have a crazy vim setup, but now i mostly use vim defaults, then it's similar on servers I ssh into as on my laptop.

  • @chandragie
    @chandragie Рік тому

    I agree with him. I think most developers nowadays are more focusing about how they could create such an amazing environment when it comes to productivity instead delivering stuffs to the users. They also forget that not of all those efforts customizing things in the computer worth the time consumed in it. In might good for some, but not for everyone. I remember when I had to pair coding with my juniors on their computers which were not in the same "productive environment whatsoever", I typed wrongly very often just because I'm used to the shortcuts I made for myself. Focus on the right target, if you have more time, customizing is not bad, but still, is it really useful?